반응형

# MVC01_01 Servlet과 Model 만을 이용한 회원관리 만들기

  • Servlet 은 MVC 요소에서 Controller를 의미한다. (C는 가장 먼저 클라이언트의 요청을 받는 요소.)

## 작업 설명

1. 클라이언트의 요청을 작업을 한다. (파라미터를 수집하는 역할을 한다.) => Controller (Servlet)

2. 클라이언트의 요청을 처리하는 작업 (비즈니스 로직) => Java class

3. 클라이언트에게 응답하는 작업 (프리젠테이션 로직) => View (JSP)

  • 위처럼 작업이 세분화 되어야 한다.
  • 우선 Sevlet 과 Model 로 회원관리 페이지 만들 예정.

## 작업 시작 (기본 디렉터리 구조 생성)

  • src 우클릭 > New 하여 새로운 package 생성 (kr.bit.model 와 kr.bit.db 패키지 생성)
  • WebContent > New 하여 새로운 Folder 생성 (member 폴더 생성)

### member.sql

  • 위에서 생성한 kr.bit.db 패키지에 member.sql 생성

### memberVO.java

  • 위에서 생성한 kr.bit.model 패키지에 memberVO.java 클래스 생성 (현실세계의 회원(Object)를 객채지향 프로그래밍에서 사용하기 위해 MemberVO라는 자료형 생성)
  • memberVO 생성 후 내부에 필요한 내용 입력. 입력완료후 우클릭 > source 들어가서
  • Generate Getters and Setters 진행 후 다시 Generate toString() 진행
  • 필요하면 생성자 메서드도 오버로딩 진행.
  • 그리고 Generate Constructor using Fields 눌러서 초기화 해줄 수 있는 생성자 생성 (회원가입용으로 num 제외)
  • 그리고 Generate Constructor using Fields 눌러서 초기화 해줄 수 있는 생성자 생성 (데이터 등 가져와서 VO로 묶을때 사용)
package kr.bit.model;

public class MemberVO {
	
	private int num;
	private String id;
	private String pass;
	private String name;
	private int age;
	private String email;
	private String phone;
		
	public MemberVO() {
		
	}
	public MemberVO(String id, String pass, String name, int age, String email, String phone) {
		super();
		this.id = id;
		this.pass = pass;
		this.name = name;
		this.age = age;
		this.email = email;
		this.phone = phone;
	}
	
	public MemberVO(int num, String id, String pass, String name, int age, String email, String phone) {
		super();
		this.num = num;
		this.id = id; 
		this.pass = pass;
		this.name = name;
		this.age = age;
		this.email = email;
		this.phone = phone;
	}
	public int getNum() {
		return num;
	}
	public void setNum(int num) {
		this.num = num;
	}
	public String getId() {
		return id;
	}
	public void setId(String id) {
		this.id = id;
	}
	public String getPass() {
		return pass;
	}
	public void setPass(String pass) {
		this.pass = pass;
	}
	public String getName() {
		return name;
	}
	public void setName(String name) {
		this.name = name;
	}
	public int getAge() {
		return age;
	}
	public void setAge(int age) {
		this.age = age;
	}
	public String getEmail() {
		return email;
	}
	public void setEmail(String email) {
		this.email = email;
	}
	public String getPhone() {
		return phone;
	}
	public void setPhone(String phone) {
		this.phone = phone;
	}
	@Override
	public String toString() {
		return "MemberVO [num=" + num + ", id=" + id + ", pass=" + pass + ", name=" + name + ", age=" + age + ", email="
				+ email + ", phone=" + phone + "]";
	}	
}

### memberDAO

  • 위에서 생성한 kr.bit.model 패키지에 memberDAO.java 생성. (JDBC)
  • 추후 여기에는 INSTER / UPDATE / DELETE 등의 기능 구현 예정
package kr.bit.model;

import java.sql.*;

// JDBC -> myBatis, JPA
public class MemberDAO {
	private Connection conn;
	private PreparedStatement ps;
	private ResultSet rs;
	
		
}

### memberRegister.html

  • WebContent > member 폴더에 memberRegister.html 생성. (회원을 DB에 등록하기 위한 UI)
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>신규 회원 가입</title>
</head>
<body>
회원가입화면
<table border="1">
	<tr>
		<td>아이디</td>
		<td><input type="text" name="id"/></td>
	</tr>
</table>
</body>
</html>

반응형

+ Recent posts