2022.08.24 JSP

sofiaยท2022๋…„ 8์›” 27์ผ
0

JAVA

๋ชฉ๋ก ๋ณด๊ธฐ
21/27
post-thumbnail

๐Ÿ“š ๋ฐ์ดํ„ฐ ๋ฒ ์ด์Šค์™€ JDBC๋ฅผ ์ด์šฉํ•œ JSP ์™€์˜ ์—ฐ๋™(Chapter 13 ppt)

my SQL ๋จผ์ € ์‹คํ–‰(๋กœ๊ทธ์ธ)
show databases;์ž…๋ ฅ

create database jspdb;์ž…๋ ฅ

use jspdb;
ํ•˜์—ฌ ๋ฐ์ดํ„ฐ ๋ฒ ์ด์Šค ๋ณ€๊ฒฝ

show tables;
ํ•˜์˜€์„๋•Œ ์•„๋ฌด๋Ÿฐ ํ…Œ์ด๋ธ” ์—†๋‹ค๊ณ  ๋‚˜์˜ด(์ƒˆ๋กญ๊ฒŒ ๋งŒ๋“  ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์— ์•„๋ฌด๊ฒƒ๋„ ์—†๊ธฐ๋•Œ๋ฌธ)

Create table member( id int not null auto_increment, name varchar (100) not null, passwd varchar(50) not null, primary key(id) );
์‹คํ–‰ ํ•˜์—ฌ ํ…Œ์ด๋ธ” ์ƒ์„ฑ ํ›„ ํ™•์ธ(show tables;)


๋ฐ์ดํ„ฐ ์ƒํ™ฉ ํ™•์ธ ํ›„,
insert into member values(1,'ํ™๊ธธ๋™','1234');์‹คํ–‰ํ•˜์—ฌ ๋ฐ์ดํ„ฐ ์ถ”๊ฐ€

์ดํด๋ฆฝ์Šค๋กœ ๋Œ์•„์™€์„œ Connection.jsp๊ธฐ๋ฐ˜์œผ๋กœ ์‹คํ–‰ํ•˜์—ฌ ์˜ค๋ผํด ์—ฐ๊ฒฐ ํ™•์ธ ๊ทธํ›„ Connection.jsp๊ธฐ๋ฐ˜์œผ๋กœ connectionMySql.jsp์ƒ์„ฑ

connectionMySql.jsp

<%@page import="java.sql.SQLException"%>
<%@page import="java.sql.DriverManager"%>
<%@page import="java.sql.Connection"%>
<%@ page language="java" contentType="text/html; charset=EUC-KR"
    pageEncoding="EUC-KR"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="EUC-KR">
<title>Insert title here</title>
</head>
<body>
   <%
   	  Connection con = null;

   
      try {
         String url = "jdbc:mysql://localhost:3306/jspdb";
         String user = "ใ…‡";
         String password = "ใ…‡ใ…‡";
         
         Class.forName("com.mysql.jdbc.Driver"); 
         con=DriverManager.getConnection(url, user, password);
         out.print("SQL ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์—ฐ๊ฒฐ์ด ์„ฑ๊ณตํ–ˆ์Šต๋‹ˆ๋‹ค.<br>");
      } catch(SQLException ex) {
         out.print("SQL ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์—ฐ๊ฒฐ์ด ์‹คํŒจํ–ˆ์Šต๋‹ˆ๋‹ค.<br>");
         out.print("SQLException : "+ex.getMessage());
      } finally {
         if(con != null) {
            con.close();
         }
      }
   %>
</body>
</html>

๊ทธ ํ›„ C:\Tomcat 9.0\lib์— sql.jar ๋ณต์‚ฌ ๋ถ™์—ฌ๋„ฃ๊ณ  ์‹คํ–‰ํ•˜๋ฉด ๋ฐ์ดํ„ฐ ๋ฒ ์ด์Šค ์—ฐ๊ฒฐ ์„ฑ๊ณตํ–ˆ๋‹ค๋œธ


ํ˜„์žฌ๊นŒ์ง€ 2๋‹จ๊ณ„ Connection๊นŒ์ง€ ์™„๋ฃŒ.

executeQuery() ๋ฉ”์†Œ๋“œ์™€ select ๋ฌธ

*. 3๋‹จ๊ณ„
Statement stmt = con.createStatement( );
: ๋ฉ”์†Œ๋“œ๋ฅผ ํ˜ธ์ถœํ•˜์—ฌ ๊ฐ์ฒด ์ƒ์„ฑ

stmt.executeQuery()=>SQL ์ฟผ๋ฆฌ ์ž‘์„ฑ
stmt.executeUpdate()=> SQL ์ฟผ๋ฆฌ ไธญ ์ˆ˜์ •(์‚ฝ์ž…, ์‚ญ์ œ ๋“ฑ)

*. 4๋‹จ๊ณ„
ResultSet
=> ๊ฒฐ๊ณผ ์ถœ๋ ฅํ•จ.(์ด๋•Œ ๋ฐ˜๋ณต๋ฌธ์„ ์‚ฌ์šฉํ•˜์—ฌ ๊ฐ€์ง€๊ณ  ์˜ด)

์˜ˆ์‹œ

๋จผ์ € ์ฟผ๋ฆฌ ์ž‘์„ฑํ•˜์—ฌ ํ…Œ์ด๋ธ” ์ƒ์„ฑ

CREATE TABLE MEMBER2
(ID VARCHAR2(20) PRIMARY KEY
,PW VARCHAR2(20)
,NAME VARCHAR2(20)
,CLASS NUMBER(2)
,TEL VARCHAR2(20)
);

๋ฐ์ดํ„ฐ ์‚ฝ์ž…

INSERT INTO MEMBER2 VALUES('trBird','abll','๊น€ํƒœ์€',1,'010-2930-4874');
INSERT INTO MEMBER2 VALUES('yjWood','abcd','์ด์€์ •',2,'010-9230-1245');
INSERT INTO MEMBER2 VALUES('jinBear','3333','์กฐ์ง„์ด',2,'010-2022-7244');

COMMIT;์„ ์‹คํ–‰ํ•˜์—ฌ์•ผ์ง€๋งŒ ์ถ”ํ›„ ์˜ค๋ฅ˜๊ฐ€ ์•ˆ๋‚จ

viewMember.jsp ์ƒ์„ฑ

<%@page import="java.sql.DriverManager"%>
<%@page import="java.sql.SQLException"%>
<%@page import="java.sql.ResultSet"%>
<%@page import="java.sql.Statement"%>
<%@page import="java.sql.Connection"%>
<%@ page language="java" contentType="text/html; charset=EUC-KR"
    pageEncoding="EUC-KR"%>
<%! 
	Connection conn = null;
	Statement stmt = null;//3๋‹จ๊ณ„
	ResultSet rs = null; //4๋‹จ๊ณ„
	
	String url = "jdbc:oracle:thin:@localhost:1521:xe";
	String user = "scott";
	String password = "tiger";
	String selectQuery = "SELECT * FROM MEMBER2";
%>
<html>
<head>
<meta charset="EUC-KR">
<title>Insert title here</title>
</head>
<body>
	<table width = "400" border = "1">
		<tr>
			<td>์•„์ด๋””</td>
			<td>์ด๋ฆ„</td>
			<td>๋“ฑ๊ธ‰</td>
			<td>์ „ํ™”๋ฒˆํ˜ธ</td>
		</tr>
		<%
			try{
				Class.forName("oracle.jdbc.driver.OracleDriver");
		        conn = DriverManager.getConnection(url, user, password);
		        stmt = conn.createStatement();
		        rs =  stmt.executeQuery(selectQuery);
		        
		        while(rs.next()){ //๋ฐ์ดํ„ฐ๊ฐ€ ์žˆ๋Š” ๋งŒํผ ๋ฐ˜๋ณต
		%>		
		<tr>
			<td><%= rs.getString("id") %></td>
			<td><%= rs.getString("name") %></td>
			<td><%= rs.getInt("class") %></td>
			<td><%= rs.getString("tel") %></td>
		</tr>	
		<%    	
		        }
			}catch(SQLException ex) {
		         ex.getMessage();
		    }  finally {
		    	try{
			        if(conn != null) rs.close();
			        if(conn != null) stmt.close();
			        if(conn != null) conn.close();		    		
		    	}catch(SQLException ex) {
			         ex.getMessage();
			    }
		    }
		%>
	</table>
	
</body>
</html>

์‹คํ–‰ํ•˜๋ฉด

<%@page import="java.sql.DriverManager"%>
<%@page import="java.sql.SQLException"%>
<%@page import="java.sql.ResultSet"%>
<%@page import="java.sql.Statement"%>
<%@page import="java.sql.Connection"%>
<%@ page language="java" contentType="text/html; charset=EUC-KR"
    pageEncoding="EUC-KR"%>
<%! 
	Connection conn = null;
	Statement stmt = null;//3๋‹จ๊ณ„
	ResultSet rs = null; //4๋‹จ๊ณ„
	
	String url = "jdbc:oracle:thin:@localhost:1521:xe";
	String user = "scott";
	String password = "tiger";
	String selectQuery = "SELECT * FROM MEMBER2";
%>
<html>
<head>
<meta charset="EUC-KR">
<title>Insert title here</title>
</head>
<body>
	<table width = "400" border = "1">
		<tr>
			<td>์•„์ด๋””</td>
			<td>์ด๋ฆ„</td>
			<td>๋“ฑ๊ธ‰</td>
			<td>์ „ํ™”๋ฒˆํ˜ธ</td>
		</tr>
		<%
			try{
				Class.forName("oracle.jdbc.driver.OracleDriver");
		        conn = DriverManager.getConnection(url, user, password);
		        stmt = conn.createStatement();
		        rs =  stmt.executeQuery(selectQuery);
		        
		        while(rs.next()){ //๋ฐ์ดํ„ฐ๊ฐ€ ์žˆ๋Š” ๋งŒํผ ๋ฐ˜๋ณต
		%>		
		<tr>
			<td><%= rs.getString("id") %></td>
			<td><%= rs.getString("name") %></td>
			<%-- <td><%= rs.getInt("class") %></td> ์ฃผ์„ : Ctrl+Shift+/ --%>
         <td>
            <%
               int n_class = rs.getInt("class");
            
               if(n_class == 1) {
                  out.print("์ผ๋ฐ˜ํšŒ์›");
               } else {
                  out.print("๊ต์ˆ˜๋‹˜");
               }
            %>
         </td>
			<td><%= rs.getString("tel") %></td>
		</tr>	
		<%    	
		        }
			}catch(SQLException ex) {
		         ex.getMessage();
		    }  finally {
		    	try{
			        if(conn != null) rs.close();
			        if(conn != null) stmt.close();
			        if(conn != null) conn.close();		    		
		    	}catch(SQLException ex) {
			         ex.getMessage();
			    }
		              
		    }
		%>
	</table>
	
</body>
</html>

viewMemberMySql.jsp ์ƒ์„ฑ

<%@page import="java.sql.DriverManager"%>
<%@page import="java.sql.SQLException"%>
<%@page import="java.sql.ResultSet"%>
<%@page import="java.sql.Statement"%>
<%@page import="java.sql.Connection"%>
<%@ page language="java" contentType="text/html; charset=EUC-KR"
    pageEncoding="EUC-KR"%>
<%! 
	Connection con = null;
	Statement stmt = null;//3๋‹จ๊ณ„
	ResultSet rs = null; //4๋‹จ๊ณ„
	
	String url = "jdbc:mysql://localhost:3306/jspdb";
    String user = "root";
    String password = "1234";
	String selectQuery = "SELECT * FROM MEMBER2";
%>
<html>
<head>
<meta charset="EUC-KR">
<title>Insert title here</title>
</head>
<body>
	<table width = "400" border = "1">
		<tr>
			<td>์•„์ด๋””</td>
			<td>์ด๋ฆ„</td>
			<td>๋“ฑ๊ธ‰</td>
			<td>์ „ํ™”๋ฒˆํ˜ธ</td>
		</tr>
		<%
			try{
				Class.forName("com.mysql.jdbc.Driver");
		        con = DriverManager.getConnection(url, user, password);
		        stmt = con.createStatement();
		        rs =  stmt.executeQuery(selectQuery);
		        
		        while(rs.next()){ //๋ฐ์ดํ„ฐ๊ฐ€ ์žˆ๋Š” ๋งŒํผ ๋ฐ˜๋ณต
		%>		
		<tr>
			<td><%= rs.getString("id") %></td>
			<td><%= rs.getString("name") %></td>
			<%-- <td><%= rs.getInt("class") %></td> ์ฃผ์„ : Ctrl+Shift+/ --%>
         <td>
            <%
               int n_class = rs.getInt("class");
            
               if(n_class == 1) {
                  out.print("์ผ๋ฐ˜ํšŒ์›");
               } else {
                  out.print("๊ต์ˆ˜๋‹˜");
               }
            %>
         </td>
			<td><%= rs.getString("tel") %></td>
		</tr>	
		<%    	
		        }
			}catch(SQLException ex) {
		         ex.getMessage();
		    }  finally {
		    	try{
			        if(con != null) rs.close();
			        if(con != null) stmt.close();
			        if(con != null) con.close();		    		
		    	}catch(SQLException ex) {
			         ex.getMessage();
			    }
		              
		    }
		%>
	</table>
	
</body>
</html>

์˜ˆ์ œ 7.2

addForm.html์ƒ์„ฑ

<!DOCTYPE html>
<html>
<head>
<meta charset="EUC-KR">
<title>Insert title here</title>
</head>
<body>
	<form method="post" action="addMember.jsp">
			์•„ ์ด ๋”” : <input type="text" name="id" size="20"><br>
			๋น„๋ฐ€๋ฒˆํ˜ธ : <input type="password" name="pw" size="20"><br>
			ํšŒ์›์ด๋ฆ„ : <input type="text" name="name" size="20"><br>
			ํšŒ์›๊ตฌ๋ถ„ : <input type="radio" name="mclass" value="1">์ผ๋ฐ˜ํšŒ์›
			        <input type="radio" name="mclass" value="2">๊ต์ˆ˜๋‹˜<br>
			์ „ํ™”๋ฒˆํ˜ธ : <select name="phone1">
						<option value = "010">010</option>
						<option value = "011">011</option>
						<option value = "016">016</option>
						<option value = "017" selected>017</option>
						<option value = "018">018</option>
						<option value = "019">019</option>
					</select>
					-
			        <input type="text" name ="phone2" size="4" maxlength="4">
			        -
			        <input type="text" name ="phone3" size="4" maxlength="4"><br>
			        <input type="submit" value="์ „์†ก">
	
	</form>
</body>
</html>

addMember.jsp

<%@page import="java.sql.DriverManager"%>
<%@page import="java.sql.SQLException"%>
<%@page import="java.sql.ResultSet"%>
<%@page import="java.sql.Statement"%>
<%@page import="java.sql.Connection"%>
<%@ page language="java" contentType="text/html; charset=EUC-KR"
    pageEncoding="EUC-KR"%>
<%!
	Connection conn = null;
	Statement stmt = null;
	ResultSet rs = null;

	String url = "jdbc:oracle:thin:@localhost:1521:xe";
	String user = "scott";
	String password = "tiger";
%>
<html>
<head>
<meta charset="EUC-KR">
<title>Insert title here</title>
</head>
<body>
	<%
		String id="", pw="", name="", p1="", p2="", p3="", sclass=""; 
		id = request.getParameter("id");
		pw = request.getParameter("pw");
		name = request.getParameter("name");
		sclass = request.getParameter("mclass");
		p1 = request.getParameter("phone1");
		p2 = request.getParameter("phone2");
		p3 = request.getParameter("phone3");
		
		try {
			Class.forName("oracle.jdbc.driver.OracleDriver");
			conn = DriverManager.getConnection(url, user, password);
			stmt = conn.createStatement();
			StringBuffer insertQuery = new StringBuffer();
			insertQuery.append("INSERT INTO MEMBER2 VALUES('");
			insertQuery.append(id+"','");
			insertQuery.append(pw+"','");
			insertQuery.append(name+"','");
			insertQuery.append(sclass+"','");
			insertQuery.append(p1+"-"+p2+"-"+p3+"')");
			
			System.out.print(insertQuery.toString());
			int re = stmt.executeUpdate(insertQuery.toString());
			
			if(re == 1) {
		%>
				์ถ”๊ฐ€ ์„ฑ๊ณต
				<br>
				<a href="addForm.html">์ถ”๊ฐ€์ž‘์—…</a>
				<a href="viewMember.jsp">๊ฒ€์ƒ‰์ž‘์—…</a>
		<%
			} else {
		%>
				<font color="red">์ถ”๊ฐ€ ์‹คํŒจ ใ… ใ…กใ… </font>
		<%
			}
		} catch(SQLException ex) {
			ex.getMessage();
		%>
			์„œ๋ฒ„๋ถˆ๋Ÿ‰ ์ž ์‹œ ํ›„ ๋‹ค์‹œ ์‹œ๋„
		<%
		} finally {
			try {
				if(rs != null) rs.close();
				if(stmt != null) stmt.close();
				if(conn != null) conn.close();
			} catch(SQLException ex) {
				ex.getMessage();
			}
		}
	%>
</body>
</html>


๋ฐ์ดํ„ฐ๊ฐ€ ์ถ”๊ฐ€๋จ์„ ํ™•์ธ ํ•  ์ˆ˜ ์žˆ์Œ

๊ทผ๋ฐ ์œ„์˜ ์ฝ”๋“œ๋กœ๋Š” ํ•œ๊ธ€๋กœ ๋œ ๋ฐ์ดํ„ฐ๋ฅผ ์ถ”๊ฐ€ํ•˜๋ฉด ๋ฐ์ดํ„ฐ๊ฐ€ ๊นจ์งˆ ์ˆ˜ ์žˆ์œผ๋ฏ€๋กœ UTF-8์™€ <% request.setCharacterEncoding("UTF-8"); %> ์ถ”๊ฐ€

<%@page import="java.sql.DriverManager"%>
<%@page import="java.sql.SQLException"%>
<%@page import="java.sql.ResultSet"%>
<%@page import="java.sql.Statement"%>
<%@page import="java.sql.Connection"%>
<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<% 
	request.setCharacterEncoding("UTF-8");  
%>  
   
<%!
	Connection conn = null;
	Statement stmt = null;
	ResultSet rs = null;

	String url = "jdbc:oracle:thin:@localhost:1521:xe";
	String user = "scott";
	String password = "tiger";
%>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
	<%
		String id="", pw="", name="", p1="", p2="", p3="", sclass=""; 
		id = request.getParameter("id");
		pw = request.getParameter("pw");
		name = request.getParameter("name");
		sclass = request.getParameter("mclass");
		p1 = request.getParameter("phone1");
		p2 = request.getParameter("phone2");
		p3 = request.getParameter("phone3");
		
		try {
			Class.forName("oracle.jdbc.driver.OracleDriver");
			conn = DriverManager.getConnection(url, user, password);
			stmt = conn.createStatement();
			StringBuffer insertQuery = new StringBuffer();
			insertQuery.append("INSERT INTO MEMBER2 VALUES('");
			insertQuery.append(id+"','");
			insertQuery.append(pw+"','");
			insertQuery.append(name+"','");
			insertQuery.append(sclass+"','");
			insertQuery.append(p1+"-"+p2+"-"+p3+"')");
			
			System.out.print(insertQuery.toString());
			int re = stmt.executeUpdate(insertQuery.toString());
			
			if(re == 1) {
		%>
				์ถ”๊ฐ€ ์„ฑ๊ณต
				<br>
				<a href="addForm.html">์ถ”๊ฐ€์ž‘์—…</a>
				<a href="viewMember.jsp">๊ฒ€์ƒ‰์ž‘์—…</a>
		<%
			} else {
		%>
				<font color="red">์ถ”๊ฐ€ ์‹คํŒจ ใ… ใ…กใ… </font>
		<%
			}
		} catch(SQLException ex) {
			ex.getMessage();
		%>
			์„œ๋ฒ„๋ถˆ๋Ÿ‰ ์ž ์‹œ ํ›„ ๋‹ค์‹œ ์‹œ๋„
		<%
		} finally {
			try {
				if(rs != null) rs.close();
				if(stmt != null) stmt.close();
				if(conn != null) conn.close();
			} catch(SQLException ex) {
				ex.getMessage();
			}
		}
	%>
</body>
</html>

ddd,1,ํ™๊ธธ๋™,๊ต์ˆ˜๋‹˜.010-1111-2222 ์ž…๋ ฅ

MYSQL์˜ ๊ฒฝ์šฐ

addFormMySql.html

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
	<form method="post" action="addMemberMySql.jsp">
		์•„ ์ด ๋”” : <input type="text" name="id" size="20"><br>
		๋น„๋ฐ€๋ฒˆํ˜ธ : <input type="password" name="pw" size="20"><br>
		ํšŒ์›์ด๋ฆ„ : <input type="text" name="name" size="20"><br>
		ํšŒ์›๊ตฌ๋ถ„ : <input type="radio" name="mclass" value="1">์ผ๋ฐ˜ํšŒ์›
				 <input type="radio" name="mclass" value="2">๊ต์ˆ˜๋‹˜<br>
		์ „ํ™”๋ฒˆํ˜ธ : <select name="phone1">
					<option value="010">010</option>
					<option value="011">011</option>
					<option value="016">016</option>
					<option value="017" selected>017</option>
					<option value="018">018</option>
					<option value="019">019</option>
				</select>
				-
				<input type="text" name="phone2" size="4" maxlength="4">
				-
				<input type="text" name="phone3" size="4" maxlength="4"><br>
				<input type="submit" value="์ „์†ก">
	</form>
</body>
</html>

addMemberMySql.jsp

<%@page import="java.sql.DriverManager"%>
<%@page import="java.sql.SQLException"%>
<%@page import="java.sql.ResultSet"%>
<%@page import="java.sql.Statement"%>
<%@page import="java.sql.Connection"%>
<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<% 
	request.setCharacterEncoding("UTF-8");  
%>  
   
<%!
	Connection con = null;
	Statement stmt = null;
	ResultSet rs = null;

	String url = "jdbc:mysql://localhost:3306/jspdb";
    String user = "root";
    String password = "1234";
%>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
	<%
		String id="", pw="", name="", p1="", p2="", p3="", sclass=""; 
		id = request.getParameter("id");
		pw = request.getParameter("pw");
		name = request.getParameter("name");
		sclass = request.getParameter("mclass");
		p1 = request.getParameter("phone1");
		p2 = request.getParameter("phone2");
		p3 = request.getParameter("phone3");
		
		try {
			Class.forName("com.mysql.jdbc.Driver");
			con = DriverManager.getConnection(url, user, password);
			stmt = con.createStatement();
			StringBuffer insertQuery = new StringBuffer();
			insertQuery.append("INSERT INTO MEMBER2 VALUES('");
			insertQuery.append(id+"','");
			insertQuery.append(pw+"','");
			insertQuery.append(name+"','");
			insertQuery.append(sclass+"','");
			insertQuery.append(p1+"-"+p2+"-"+p3+"')");
			
			System.out.print(insertQuery.toString());
			int re = stmt.executeUpdate(insertQuery.toString());
			
			if(re == 1) {
		%>
				์ถ”๊ฐ€ ์„ฑ๊ณต
				<br>
				<a href="addFormMySql.html">์ถ”๊ฐ€์ž‘์—…</a>
				<a href="viewMemberMySql.jsp">๊ฒ€์ƒ‰์ž‘์—…</a>
		<%
			} else {
		%>
				<font color="red">์ถ”๊ฐ€ ์‹คํŒจ ใ… ใ…กใ… </font>
		<%
			}
		} catch(SQLException ex) {
			ex.getMessage();
		%>
			์„œ๋ฒ„๋ถˆ๋Ÿ‰ ์ž ์‹œ ํ›„ ๋‹ค์‹œ ์‹œ๋„
		<%
		} finally {
			try {
				if(rs != null) rs.close();
				if(stmt != null) stmt.close();
				if(con != null) con.close();
			} catch(SQLException ex) {
				ex.getMessage();
			}
		}
	%>
</body>
</html>

๐Ÿ“š CONNECTION POOL๋กœ JSP์™€ ๋ฐ์ดํ„ฐ ๋ฒ ์ด์Šค ์—ฐ๋™

DBCP

JDBC๋ณด๋‹ค ํผํฌ๋จผ์Šค์ ์œผ๋กœ ์„ฑ๋Šฅ์ด ์ข‹์Œ

TOMCAT์˜ server.xml์— ์ถ”๊ฐ€ (Contextํƒœ๊ทธ ์•ˆ์— ์‚ฝ์ž…

<Resource auth="Container" driverClassName="oracle.jdbc.driver.OracleDriver" maxActive="100" maxIdle="30" maxWait="10000" name="jdbc/oracle" password="tiger" type="javax.sql.DataSource" url="jdbc:oracle:thin:@localhost:1521:xe" username="scott"/>

๊ทธ ํ›„
dbConn.jsp ์ƒ์„ฑ

<%@page import="javax.naming.Context"%>
<%@page import="javax.naming.InitialContext"%>
<%@page import="java.sql.SQLException"%>
<%@page import="javax.naming.NamingException"%>
<%@page import="javax.sql.DataSource"%>
<%@page import="java.sql.Connection"%>
<%@ page language="java" contentType="text/html; charset=EUC-KR"
    pageEncoding="EUC-KR"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="EUC-KR">
<title>Insert title here</title>
</head>
<body>
	<%!
		Connection conn = null;
		DataSource ds = null;
	%>
	
	<%
		try{
			Context ctx =  new InitialContext();
			ds = (DataSource)ctx.lookup("java:comp/env/jdbc/oracle");//์บ์ŠคํŒ…
			conn = ds.getConnection();
			System.out.println("DBCP ์—ฐ๋™ ์„ฑ๊ณต");
		}catch(NamingException ne){
			ne.printStackTrace();
		}catch(SQLException ex) {
	         out.print("๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์—ฐ๊ฒฐ์ด ์‹คํŒจํ–ˆ์Šต๋‹ˆ๋‹ค.<br>");
	         out.print("SQLException : "+ex.getMessage());
	      } finally {
	    	  try{
	    		  
	    	  }catch(Exception e){
	    		  e.printStackTrace();
	    	  }
	         if(conn != null) {
	            conn.close();
	         }
	      }
		
	%>
</body>
</html>

๊ทธ ํ›„ ์‹คํ–‰

์˜ˆ์ œ ํšŒ์› ์ •๋ณด ์กฐํšŒ/์ˆ˜์ •

viewMember.jsp (chapter 14)

<%@page import="java.sql.DriverManager"%>
<%@page import="java.sql.SQLException"%>
<%@page import="java.sql.ResultSet"%>
<%@page import="java.sql.Statement"%>
<%@page import="java.sql.Connection"%>
<%@ page language="java" contentType="text/html; charset=EUC-KR"
    pageEncoding="EUC-KR"%>
<%!
	Connection conn = null;
	Statement stmt = null;
	ResultSet rs = null;

	String url = "jdbc:oracle:thin:@localhost:1521:xe";
	String user = "scott";
	String password = "tiger";
	String selectQuery = "SELECT * FROM MEMBER2";
%>
<html>
<head>
<meta charset="EUC-KR">
<title>Insert title here</title>
</head>
<body>
	<table width="400" border="1">
		<tr>
			<td>์•„์ด๋””</td>
			<td>์ด๋ฆ„</td>
			<td>๋“ฑ๊ธ‰</td>
			<td>์ „ํ™”๋ฒˆํ˜ธ</td>
		</tr>
		<%
			try {
				Class.forName("oracle.jdbc.driver.OracleDriver");
				conn = DriverManager.getConnection(url, user, password);
				stmt = conn.createStatement();
				rs = stmt.executeQuery(selectQuery); //์ฟผ๋ฆฌ ๊ฒฐ๊ณผ๋ฅผ rs๋กœ ๋ฐ›์Œ
				
				while(rs.next()) {
		%>
		<tr>
			<%-- <td><%= rs.getString("id") %></td> --%>
			<td>
				<a href = "updateMember.jsp?id = <%= rs.getString("id") %>">
					 <%= rs.getString("id") %>
				</a>
			</td>
			<td>
				<%= rs.getString("name") %>
			</td>
			<%-- <td><%= rs.getInt("class") %></td> ์ฃผ์„ : Ctrl+Shift+/ --%>
			<td>
				<%
					int n_class = rs.getInt("class");
				
					if(n_class == 1) {
						out.print("์ผ๋ฐ˜ํšŒ์›");
					} else {
						out.print("๊ต์ˆ˜๋‹˜");
					}
				%>
			</td>
			<td><%= rs.getString("tel") %></td>
		</tr>
		<%
				}
			} catch(SQLException ex) {
				ex.getMessage();
			} finally {
				try {
					if(rs != null) rs.close();
					if(stmt != null) stmt.close();
					if(conn != null) conn.close();
				} catch(SQLException ex) {
					ex.getMessage();
				}
			}
		%>
	</table>
</body>
</html>

(๊ธˆ์š”์ผ์— ์ด์–ด์„œ ๋‹ค์‹œํ•˜๋‹ˆ ๊ธˆ์š”์ผ ํฌ์Šคํ„ฐ ์ฐธ๊ณ )

0๊ฐœ์˜ ๋Œ“๊ธ€