MySql install 버전을 다운로드 하시고 설치 하시면
Command Line Client 를 실행해 줍니다.
패스워드는 초기에 지정해주셨던 ROOT 계정의 비밀번호를 입력해 주시면 됩니다.
이렇게 DB를 만들어 주셨으면 위에 만들었던 DATABASE에 접속할 수 있도록 하나의 자바 빈즈를 만들어 주도록 하겠습니다.
user package에 UserDTO 클래스를 만들어 줍니다.
package user;
public class UserDTO {
String userID;
String userPassword;
String userName;
int userAge;
String userGender;
String userEmail;
String userProfile;
public String getUserID() {
return userID;
}
public void setUserID(String userID) {
this.userID = userID;
}
public String getUserPassword() {
return userPassword;
}
public void setUserPassword(String userPassword) {
this.userPassword = userPassword;
}
public String getUserName() {
return userName;
}
public void setUserName(String userName) {
this.userName = userName;
}
public int getUserAge() {
return userAge;
}
public void setUserAge(int userAge) {
this.userAge = userAge;
}
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;
}
public String getUserProfile() {
return userProfile;
}
public void setUserProfile(String userProfile) {
this.userProfile = userProfile;
}
}
이제 MySQL Database와 JSP를 연동하기 위해서는 jdbc가 필요합니다.
GOOGLE에서 검색해서 다운 받으셔도 되지만 편의상 파일로 올리겠습니다.
우리는 MySQL Connector java.jar파일만 필요하기에 압축을 푸시고 앞의 파일을 복사해서 Eclipse내에
WEB-INF\lib 폴더안에 복사 붙여 넣기 해줍니다.
넣어준 파일에 오른쪽 마우스 우클릭을 하여 build path - add를 클릭하여 줍니다.
그리고 WebContent안에 META-INF라는 폴더가 있습니다. 거기 안쪽에 하나의 context파일을 만들어 주도록 하겠습니다.
xml파일을 만들어 주시고 이름은 context.xml 으로 만들겠습니다.
<Resource
name: DataSource에 대한 JNDI이름
auth : 인증 주체
type: 데이터베이스 종류별 DataSource
driverClassName : 연결할 데이터베이스 종류에 따른 드라이버 클래스 이름
factory : 연결할 데이터베이스 종류에 따른 ConnectionPool 생성 클래스 이름
maxActive : 동시에 최대로 데이터베이스 연결할 수 있는 Connection 수
maxIdle : 동시에 idle 상태로 대기할 수 있는 최대 수
maxWait : 새로운 연결이 생길 때까지 기다릴 수 있는 최대 시간
user : 데이터베이스 접속 ID
password : 데이터베이스 접속 비밀번호
type : 데이터베이스 종류별 DataSource
url : 접속할 데이터 베이스 주소와 포트 번호 및 SID />
<!-- path는 우리 프로젝트의 이름 / docbase는 www를 넣어 줌으로써 WebContent라는걸 알림 -->
<Context path="/UserChat" docBase="www">
<Resource
name="jdbc/UserChat"
auth="Container"
type="javax.sql.DataSource"
driverClassName="com.mysql.jdbc.Driver"
loginTimeout="10"
validationQuery="SELECT 1 FROM DUAL"
maxWait="5000"
username="root"
password="111111"
testOnBorrow="true"
url="jdbc:mysql://localhost:3308/UserChat?serverTimezone=UTC" />
<ResourceLink type="javax.sql.data.DataSource"
name="jdbc/UserChat"
global="jdbc/UserChat" />
</Context>
저는 port 번호를 3308로 설정을 하여서 url에 3308로 하였지만 수정 안하신 분들은 3306일거에요!
이렇게 설정이 완료되면 성공적으로 커넥션 풀을 이용할 수 있습니다.
이제 커넥션 풀을 이용할 수 있는지 테스트를 한번 해보겠습니다.
WebContent에 테스트 할 connection.jsp 파일을 만들어 주겠습니다.
<!DOCTYPE html>
<html>
<head>
<%@ page import="java.sql.*, javax.sql.*, java.io.*,javax.naming.InitialContext, javax.naming.Context" %>
</head>
<body>
<%
InitialContext initCtx = new InitialContext();
Context envContext = (Context)initCtx.lookup("java:/comp/env");
DataSource ds = (DataSource) envContext.lookup("jdbc/UserChat");
Connection conn = ds.getConnection();
Statement stmt = conn.createStatement();
ResultSet rs = stmt.executeQuery("SELECT VERSION();");
while(rs.next()){
out.println("MySQL Version : " + rs.getString("version()"));
}
rs.close();
stmt.close();
conn.close();
initCtx.close();
%>
</body>
</html>
실행을 하게 되면
저의 MySQL 버전이 나옵니다. 연결이 잘 됬나 봅니다^^
'2020 > JSP 기본 WEB 만들기(미완성)' 카테고리의 다른 글
# 6 채팅 데이터베이스 구축 (0) | 2020.05.28 |
---|---|
#5 채팅창 디자인 구현 (0) | 2020.05.27 |
#4 JSP 회원 가입 DB기능 구현 (0) | 2020.05.20 |
# 회원 가입 화면 만들기 (0) | 2020.05.20 |
#1 메인화면의 메뉴bar 만들기 (0) | 2020.05.19 |