Notice
Recent Posts
Recent Comments
관리 메뉴

Developer Gonie

[9주차] 12. JSP에서의 JDBC 사용준비 및 SELECT 쿼리문 수행 본문

K-DigitalTraining 강의/8. JSP

[9주차] 12. JSP에서의 JDBC 사용준비 및 SELECT 쿼리문 수행

이대곤 2022. 7. 13. 02:35

JSP에서의 JDBC 사용준비

C:\Oracle\product\12.2.0\dbhome_1\jdbc\lib\ojdbc8.jar 파일 WEB_INF 폴더 아래 lib 밑에 옮기기

JSP에서의 SELECT 문 조회

* 과거에 java 코드에서 JDBC를 이용한 코드를 작성할 때, 여러가지 예외들을 try-catch 문으로 처리해줘야 했다.
  그러나, JSP에서 JDBC 관련 코드를 작성할 때는 예외처리가 나중에 서블릿 java 파일로 변환될 때 자동으로 포함되기
  때문에 안 해줘도 된다. 

<%@page import="java.sql.ResultSet"%>
<%@page import="java.sql.PreparedStatement"%>
<%@page import="java.sql.Connection"%>
<%@page import="java.sql.DriverManager"%>

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
    
Select register 쿼리 <br>

<%
	String driver = "oracle.jdbc.driver.OracleDriver";
	String url = "jdbc:oracle:thin:@localhost:1521:orcl";
	String id = "jspid";
	String pw = "jsppw";

	Connection conn = null;
	
	//1. 드라이버로드
	Class.forName(driver);
	
	//2. 계정에 접속 
	conn = DriverManager.getConnection(url, id, pw); // DriverManager 클래스 import 필요
	
	//3. SQL문 작성 및 분석
	String sql = "select * from register";
	PreparedStatement ps = conn.prepareStatement(sql);
	
	//4. SQL문 실행
	ResultSet rs = ps.executeQuery();
	
%>
	<table border="1" width="600">
		<tr>
			<td>아이디</td>
			<td>비번</td>
			<td>이름</td>
			<td>성별</td>
			<td>이메일</td> <!-- uname, dname 합쳐서 이메일  -->
		</tr>

<%	
	
	while(rs.next()){
		String id2 = rs.getString("id");
		String passwd = rs.getString("passwd");
		String name = rs.getString("name");
		String gender = rs.getString("gender");
		String uname = rs.getString("uname");
		String dname = rs.getString("dname");
%>
	<tr>
		<td><%=id2 %></td>
		<td><%=passwd %></td>
		<td><%=name %></td>
		<td><%=gender %></td>
		<td><%=uname %> @ <%=dname %></td>
	</tr>
<%	
	}//while
	
	//5. 접속끊기
	conn.close();
%>
	</table>

혹시라도 실행해보고 싶다면 참고

drop table register;

create table register(
	id varchar2(10) primary key,
	passwd varchar2(10) not null,
	name varchar2(10) not null,
	gender varchar2(10) not null,
	uname varchar2(10) not null,
	dname varchar2(10) not null
);

insert into register(id,passwd,name,gender,uname,dname)
values('a1','1111','태연','여','abc','naver.com');

insert into register(id,passwd,name,gender,uname,dname)
values('a2','2222','찬성','남','xxx','daum.net');

commit;

select * from register;
Comments