Project Name은 MVC02 입력 후 Next > src 확인 후 Next > Context root : MVC02, Content directory : WebContent 확인 후 밑에 Generate web.xml deployment descriptor 체크 후 Finish.
## Context 등록
Servers > 톰캣 우클릭 > Add and Remove 클릭
Available 에 있는 MVC02 를 클릭 후 Add 눌러서 오른쪽 Configured로 이동 후 Finish.
## DB 연동 jar파일 가져오기
mysql-connector-java-5.1.31.jar 파일을 MVC02 > WebContent > WEB-INF > lib 에 추가.
## 필요한 패키지 가져오기
기존 MVC01 에서 사용하던 kr.bit.db 패키지, kr.bit.model 패키지 MVC02로 가져오기.
## JSP (Java Server Page)
자바 서버에서 구동되는 웹 페이지
Servlet도 자바로 된 웹 프로그래밍인데, Controller의 역할을 갖고있다.
JSP의 경우 View (프리젠테이션) 역할을 갖고 있다.
### JSP 생성
MVC02 > WebContent 우클릭 > New > JSP File 클릭
File name : test01.jsp 입력 후 Finish 클릭하면 아래와 같은 기본 골격이 만들어 진다.
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html>
<%
int sum = 0;
for ( int i = 1; i <= 10; i++ ) {
sum += i;
}
%>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
<table border="1">
<tr>
<td>1 ~ 10까지의 총합</td>
<td><%=sum %></td>
</tr>
</table>
</body>
</html>
### JSP 이용한 s ~ e 까지의 총합 구하는 함수
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html>
<%-- 두 수 사이의 총합을 구하는 메서드 --%>
<%!
public int hap(int s, int e) {
int sum = 0;
for ( int i = s; i <= e; i++ ) {
sum += i;
}
return sum;
}
%>
<%
int sum = 0;
for ( int i = 1; i <= 10; i++ ) {
sum += i;
}
%>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
<table border="1">
<tr>
<td>1 ~ 10까지의 총합</td>
<td><%=sum %></td>
</tr>
<tr>
<td>55 ~ 350까지의 총합</td>
<td><%=hap(55, 350) %></td>
</tr>
</table>
</body>
</html>
kr.bit.controller 우 클릭 > New > Servlet 클릭 후 MemberContentController 이름 설정 후 Next > URL Mapping의 경우 memberContent.do 입력 후 Next > Service 만 클릭 하여 Finish.
// 회원 상세보기 기능
public MemberVO memberContent(int num) {
String SQL = "select * from member where num = ?";
getConnect();
MemberVO vo = null;
try {
ps = conn.prepareStatement(SQL);
ps.setInt(1, num);
rs = ps.executeQuery();
if (rs.next()) {
// 데이터 존재 시 회원 한명의 데이터 묶기(VO)
num = rs.getInt("num");
String id = rs.getString("id");
String pass = rs.getString("pass");
String name = rs.getString("name");
int age = rs.getInt("age");
String email = rs.getString("email");
String phone = rs.getString("phone");
vo = new MemberVO(num, id, pass, name, age, email, phone);
}
} catch(Exception e) {
e.printStackTrace();
} finally {
dbClose();
}
return vo;
}