n JDBC Driver Type JDBC API JDBC JDBC
n JDBC Driver Type 자바 애플리케이션 JDBC API JDBC 드라이버 관리자 JDBC 드라이버 API JDBC-ODBC 드라이버 Native-API 드라이버 ODBC 드라이 버 DBMS Net-Protocol 드라이버 Native-Protocol 드라이버 JDBC 미들웨어 DBMS
o JDBC Driver n JDBC Driver 설치 q q q My. SQL 사이트 (http: //www. mysql. com/downloads) mysql-connector-java-5. 1. 6. zip 다운 파일 압축 해제후 mysql-connector-java-5. 1. 6 bin. jar 복사 j 2 sdk 1. 5. 1jrelibext 에 붙여넣기 C: Tomcat 6. 0lib에 붙여넣기 JDK-HOME
o JDBC를 통한 My. SQL과의 연동 테스트 //Driver. Test. java 01 import java. sql. *; 02 03 public class Driver. Test{ 04 05 public static void main(String args[]){ 06 07 Connection con; 08 ID Passwd 09 try{ 10 Class. for. Name("org. gjt. mm. mysql. Driver"); 11 con=Driver. Manager. get. Connection("jdbc: mysql: //localhost: 3306/my. DB“, "root", " "); 12 System. out. println("Success!"); 13 } 14 catch(SQLException ex){ System. out. println("SQLException: "+ ex); } 15 catch(Exception ex){ System. out. println("Exception: " + ex); } 16 } 17 } C: Tomcat 6. 0webappsch 09>javac –d. WEB-INFclasses Driver. Test. java C: Tomcat 6. 0webappsch 09WEB-INFclasses>java –classpath. ; c: j 2 sdk 1. 5. 1jrelibextmysql-connector-java-5. 1. 6 -bin. jar Driver. Test
n JDBC URL 사용 예 Connection conn =Driver. Manager. get. Connection(“jdbc: mysql: //localhost: 3306/mydb”, ”root”, ””); n 한글이 깨어지는 것을 막기위해 use. Unicode 속성과 character. Encoding 속성 사용 Connection conn =Driver. Manager. get. Connection(“jdbc: mysql: //localhost: 3306/ mydb? use. Unicode=true&character. Encoding=euc-kr”, ”root”, ””);
n Statement 생성 및 쿼리 실행 Statement stmt = conn. create. Statement(); stmt. execute. Update(“insert into test values('" +request. get. Parameter("username")+"', '“ +request. get. Parameter("email")+"')"); n Prepared. Statement 생성 및 쿼리 실행 Prepared. Statement pstmt = conn. prepare. Statement(“insert into test values(? , ? )”); pstmt. set. String(1, request. get. Parameter("username"); pstmt. set. String(2, request. get. Parameter("email"); pstmt. execute. Update();
n 결과 받기 Result. Set rs = pstmt. execute. Query(); while(rs. next()) { name = rs. get. String(1); // or rs. get. String(“name”); age = rs. get. Int(2); // or rs. get. Int(“email”); }
n Insert 예 q n Select 예 q n stmt. execute. Query(“select * from member”); Update 예제 q n stmt. execute. Update("insert into member(id, passwd, name, mem_num 1, mem_num 2, e_mail, phone, zipcode, address, job) values(‘Korea', '3333', 'multimedia', '1234567 ', 'kimjh@hansung. ac. kr', '016 -9778 -4340', '136792', 'Seoul, Korea‘, 'capital')"); stmt. execute. Update("update member set passwd='44442222' where id='Korea'"); Delete 예제 q stmt. execute. Update("delete from member where id='Japan'");
3. 2 자바빈즈를 사용한 데이터베이스 연동 n 예제 q q q Register. Bean. java Member. Mgr. java Using. JDBC_bean. jsp
4. 2 Connection. Pool을 사용한 데이터베 이스 연결 n Connection. Pool을 이용한 데이터베이스 프로그램 q q 공개용 풀 관리자 DBConnection. Mgr. java Using. JDBCPool_jsp. jsp
4. 3 Connection. Pool과 Bean을 이용한 데이터베이스 연결 n 예제 q q q Register. Bean. java Member. Mgr. Pool. java Using. JDBCPool_bean. jsp
- Slides: 26