반응형
여승철
INTP 개발자
여승철
  • 분류 전체보기 (376)
    • CS (16)
      • 면접 준비 (7)
      • 운영체제 (0)
      • 네트워크 (2)
      • HTTP (6)
      • 스프링(Spring) IoC 컨테이너 (0)
      • 알고리즘 (1)
    • Web (13)
    • AWS (6)
    • Java (43)
    • JSP & Servlet (65)
      • 개념 (42)
      • 실습 (23)
    • Spring Framework (33)
    • Spring Boot (10)
    • Spring Data (22)
      • JPA (14)
      • Query DSL (7)
      • Redis (1)
    • Spring Security (9)
    • Spring Batch (4)
    • MyBatis (10)
    • Front-End (51)
      • JS (27)
      • Vue.js (17)
      • React (5)
      • JQuery (0)
      • d3.js (2)
    • DBMS (24)
      • SQL, RDBMS (16)
      • MongoDB (5)
      • Redis (3)
    • Kafka (3)
    • 리눅스 (Linux) (4)
    • 디자인 패턴 (3)
    • VCS (8)
    • API (0)
    • TOOL (3)
    • Reading Book (28)
      • 이펙티브 자바 (11)
      • Clean Code (10)
      • 1분 설명력 (4)
      • HOW TO 맥킨지 문제해결의 기술 (3)
    • C# (4)
    • NSIS (6)
    • ETC (11)

블로그 메뉴

  • 홈
  • 태그

인기 글

태그

  • 로그인
  • controller
  • JSTL
  • Spring Batch
  • mybatis
  • ubuntu
  • 회원 관리
  • EC2
  • 맥킨지
  • 이펙티브 자바
  • querydsl
  • HTTP
  • 디자인 패턴
  • JDBC
  • servlet
  • 스트림
  • 게시판
  • jsp
  • 환경 세팅
  • Dao

최근 댓글

최근 글

hELLO· Designed By 정상우.
여승철

INTP 개발자

JSP & Servlet/실습

[JSP & Servlet] 회원 관리 - 테이블 생성 및 vo(Value Object) + 기본 세팅

2022. 7. 2. 23:10
반응형

 

  1. 뷰 페이지에서 JSTL을 사용할 것이기 때문에 라이브러리(lib)에 JSTL 라이브러리를 추가해야 한다.
    (하단 링크 참고)

  2. 게시판과 쇼핑몰 만들기 때와 마찬가지로 FrontController 패턴을 사용할 것이다. 이곳에서 모든 요청이 들어오면 뿌려준다. 즉, FrontController에 요청이 전송되어 오면 요청에 맞게 처리할 수 있도록 Controller(Action 클래스)를 호출하여준다.

https://yeo-computerclass.tistory.com/179


 

 

📌테이블 생성

CREATE TABLE member(
	MEMBER_ID VARCHAR(16),
	MEMBER_PW VARCHAR(16),
	MEMBER_NAME VARCHAR(16),
	MEMBER_AGE INT,
	MEMBER_GENDER VARCHAR(6),
	MEMBER_EMAIL VARCHAR(30),
	PRIMARY KEY(MEMBER_ID)
);

 

💡이메일 UNIQUE로 지정하기

이메일이 기본 키는 아니지만 다른 회원 정보와 중복되어서는 안 되기 때문에 유니크로 설정한다.

ALTER TABLE member 
ADD UNIQUE KEY (MEMBER_EMAIL);

 

 

 

 

 

📌VO(DTO)

MemberBean.java

회원 정보 하나를 저장할 수 있는 클래스

package vo;

public class MemberBean {
	private String MEMBER_ID;
	private String MEMBER_PW;
	private String MEMBER_NAME;
	private int MEMBER_AGE;
	private String MEMBER_GENDER;
	private String MEMBER_EMAIL;
	
	public String getMEMBER_ID() {
		return MEMBER_ID;
	}
	
	public void setMEMBER_ID(String member_id) {
		MEMBER_ID = member_id;
	}
	
	public String getMEMBER_PW() {
		return MEMBER_PW;
	}
	
	public void setMEMBER_PW(String member_pw) {
		MEMBER_PW = member_pw;
	}
	
	public String getMEMBER_NAME() {
		return MEMBER_NAME;
	}
	
	public void setMEMBER_NAME(String member_name) {
		MEMBER_NAME = member_name;
	}
	
	public int getMEMBER_AGE() {
		return MEMBER_AGE;
	}
	
	public void setMEMBER_AGE(int member_age) {
		MEMBER_AGE = member_age;
	}
	
	public String getMEMBER_GENDER() {
		return MEMBER_GENDER;
	}
	
	public void setMEMBER_GENDER(String member_gender) {
		MEMBER_GENDER = member_gender;
	}
	
	public String getMEMBER_EMAIL() {
		return MEMBER_EMAIL;
	}
	
	public void setMEMBER_EMAIL(String member_email) {
		MEMBER_EMAIL = member_email;
	}
}

 

ActionForward.java

포워딩 정보 하나를 저장하는 클래스

package vo;

public class ActionForward {
	private boolean isRedirect=false;
	private String path=null;
	
	public boolean isRedirect(){
		return isRedirect;
	}
	
	public String getPath(){
		return path;
	}
	
	public void setRedirect(boolean b){
		isRedirect=b;
	}
	
	public void setPath(String string){
		path=string;
	}
}

 

 

 

 

 

📌기본세팅

JdbcUtil.java

DB 작업 시 공통적으로 사용하는 메소드를 정의한 클래스

package db;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.Statement;

//DB 작업을 할 때 반복적으로 수행해야 하는 작업을 정의하는 클래스
public class JdbcUtil {
	
	public static Connection getConnection(){
		Connection con = null;
		
		String driver = "com.mysql.jdbc.Driver";
		String url = "jdbc:mysql://localhost:3306/testDB";
		
		try {
			Class.forName(driver);
			con = DriverManager.getConnection(url,"아이디","비밀번호");
			con.setAutoCommit(false);
			
			System.out.println("connect succes");
		} catch (Exception e) {
			System.out.println("connect 실패");
			e.printStackTrace();
		}
		return con;
	}
	
	public static void close(Connection con){
		try {
			con.close();
		} catch (Exception e) {
			e.printStackTrace();
		}
	}
	
	public static void close(Statement stmt){
		try {
			stmt.close();
		} catch (Exception e) {
			e.printStackTrace();
		}
	}
	
	public static void close(ResultSet rs){
		try {
			rs.close();
		} catch (Exception e) {
			e.printStackTrace();
		}
	}
	
	public static void commit(Connection con){
		try {
			con.commit();
		} catch (Exception e) {
			e.printStackTrace();
		}
	}
	
	public static void rollback(Connection con){
		try {
			con.rollback();
		} catch (Exception e) {
			e.printStackTrace();
		}
	}
}

 

 

 

반응형
저작자표시 (새창열림)

'JSP & Servlet > 실습' 카테고리의 다른 글

[JSP & Servlet] 회원 관리 - Action  (0) 2022.07.03
[JSP & Servlet] 회원 관리 - controller  (0) 2022.07.03
[JSP & Servlet] 쇼핑몰 (오늘 본 상품 & 장바구니) - View  (0) 2022.07.02
[JSP & Servlet] 쇼핑몰 (오늘 본 상품 & 장바구니) - DAO  (0) 2022.07.01
[JSP & Servlet] 쇼핑몰 (오늘 본 상품 & 장바구니) - Service  (0) 2022.07.01
    여승철
    여승철

    티스토리툴바