개발/JSP 게시판 만들기

[JSP 게시판 만들기] 3강 회원 데이터베이스 구축하기 (MYSQL)

ee2ee2 2021. 10. 29. 22:11
728x90
반응형

참고 유튜브

https://www.youtube.com/watch?v=kN8xRG6UPZM&list=PLRx0vPvlEmdAZv_okJzox5wj2gG_fNh_6&index=3 

지난 시간 로그인 페이지 디자인을 완료했다.

이제 실제 웹페이지의 회원 정보 및 정보들을 저장할 데이터 베이스를 구축 및 연동이 필요하다.

이번시간은 MYSQL(Database)을 설치하여 연동까지 진행할 것이다.


MYSQL 다운로드 (설치버전 : mysql-installer-community-8.0.27.0.msi)

download ULR : https://dev.mysql.com/downloads/windows/installer/8.0.html

 

MySQL :: Download MySQL Installer

Select Operating System: Select Operating System… Microsoft Windows Select OS Version: All Windows (x86, 32-bit) Windows (x86, 32-bit), MSI Installer 8.0.27 2.4M (mysql-installer-web-community-8.0.27.0.msi) MD5: 9766651e52a597f0350de8e80486cdac | Signatu

dev.mysql.com

위 URL을 접속 후, 아래 페이지에서 "Go to Download Page" 선택

 

아래 설치파일이 즉시 설치 가능하도록 도와주는 설치파일이다.

다운로드를 누르면 회원가입/로그인 하라는 페이지가 나오는데 무시하고 다운로드 진행하면 된다.

 

설치

다운이 완료 되었으면, 다운로드된 폴더로 들어가 msi 파일을 클릭해 설치를 진행한다.

 

 

해당 프로젝트에서는 Database의 모든 설정을 Default로 하고 진행하였다.

설치하는데 시간이 꽤 걸린다.
설치중....
Next >

만약 Next를 눌렀을 때, 다음과 같은 오류가 발생한다면 아래 글을 참고하세요!

(전 이전에 MySQL을 한 번 설치한 적이 있어서 에러가 발생했네요)

 

 

처음 설치하시는 분들이라면! 아래 처럼 나오실 거예요 (기본 포트 : 3306) Next >

root 계정의 패스워드 설정하기 (까먹지 않도록 주의한다!) Next > 

Next >

Execute > 설치 다된 후에 Finish

Next > 

Finish (모두 default 세팅)

Next > 

앞서 설정한 root 계정의 Password를 입력 후, Check 버튼을 눌러 서버의 연결을 확인해본다. Next > 

연결 성공!

Execute 클릭 후, 설치 완료되면 Finish

Next > 

Workbench나 Shell은 당장 사용안할거라 체크 해제 후, Finish

MySQL 설치완료!


시작 메뉴에 mysql을 검색하면 아래와 같이 뜨는 것을 확인할 수 있다!

 

MySQL 8.0 Command Line Client를 클릭하여, 설치시 설정한 root 계정의 패스워드를 입력하면 mysql 접속 성공!

로그인 완료한 모습


데이터베이스 및 테이블 생성하기

 

CREATE DATABASE BOARDSITE; --BOARDSITE라는 명칭의 DATABASE 생성

 

USE BOARDSITE; --현재 사용할 데이터베이스를 선택

이제 실질적으로 게시판 사용자의 회원 데이터를 담는 TABLE을 생성해본다.

 

* User 정보를 담는 테이블 (ID,PW,이름,성별,이메일 정보를 갖고 Key값은 ID)

CREATE TABLE USER (
     userID VARCHAR(20),
     userPW VARCHAR(20),
     userName VARCHAR(20),
     userGender VARCHAR(20),
     userEmail VARCHAR(50),
     primary key(userID)
);

 

생성한 테이블 정보를 확인해본다!

 

SHOW TABLES; --현재 사용중인 데이터베이스에 있는 모든 TABLE 목록

DESC USER;     -- 생성한 USER 테이블의 속성을 확인

 

테스트 데이터를 INSERT해보자.

 

INSERT INTO USER VALUES('gildong', '123456', '홍길동', '남자', 'gildong@naver.com'); 

SELECT * FROM USER; --데이터 조회

COMMIT; --INSERT, UPDATE, DELETE 등의 작업 내용을 물리 디스크로 완전히 저장시키는 명령어

(즉, 이전 까지의 작업을 완전 저장하는 명령어)


JSP 파일과 MySQL연동 1단계

 

1. 프로젝트 src 폴더 아래 "USER"라는 명칭의 Java Package를 생성한다.

 

2. pakage 내 User Cass를 생성한다.

이 클래스를 통해 MySQL의 USER 테이블과 데이터를 교환(관리, 처리)할 수 있다고 생각하면 된다. (Java Beans라고 함)

 

변수명은 DATABASE의 TABLE 내 변수명과 동일하게 하는 것이 가장 깔끔!

여기서 끝이 아니다! 이제 MySQL과 Data를 주고받을 수 있는 Getter / Setter 메소드가 필요하다.

 

CTRL+ALT+S 혹은 변수 전체 Drag>우클릭>Source>Generate Getters and Setters... 

 

Select All > Generate 하면 선택한 변수에 대해 Getter / Setter 메소드를 자동으로 생성해준다!

 

User.java

package USER;

public class User {
	private String userID;
	private String userPW;
	private String userName;
	private String userGender;
	private String userEmail;
	
	public String getUserID() {
		return userID;
	}
	public void setUserID(String userID) {
		this.userID = userID;
	}
	public String getUserPW() {
		return userPW;
	}
	public void setUserPW(String userPW) {
		this.userPW = userPW;
	}
	public String getUserName() {
		return userName;
	}
	public void setUserName(String userName) {
		this.userName = userName;
	}
	public String getUserGender() {
		return userGender;
	}
	public void setUserGender(String userGender) {
		this.userGender = userGender;
	}
	public String getUserEmail() {
		return userEmail;
	}
	public void setUserEmail(String userEmail) {
		this.userEmail = userEmail;
	}
}

다음 4강에서 이어서 진행하겠다!