설치 : JDBC MySQL : MySQL 연결 #2 : MySQL 연결 #3 JSP 강좌 > JDBC > MySQL 연결 2000-12-19 kenu |
||
jdbc 에는 연결되는 DB마다 다른 Driver를 사용해서 연결하게 됩니다. MySQL도 jdbc driver를 지원합니다. 일단 다운 받으러 갑시다. [다운받기] 1.2c를 받아서 사용해봅니다. 그냥 alzip 이나 winzip으로 압축을 풀어줍니다. 압축풀면 나오는 doc\README.html 파일을 잘 읽어주세요. ^^ 그럼 이거 안봐도 되요. 켈켈... CLASSPATH에 mm.mysql.jdbc-1.2c 폴더를 추가해줍니다. 지금까지 세팅한 것이라면 win2000 + iis5 + resin 1.2.1 + MySQL 3.23.29 의 환경에서 CLASSPATH 를 추가하게 되죠. 바탕화면의 내컴퓨터 아이콘을 오른버튼메뉴에서 등록정보를 들어가서 고급의 환경변수 버튼을 클릭해서 CLASSPATH 값을 복사합니다. 편집해서 붙여넣죠. 제 경우는... .;C:\JDK1.3\LIB\tools.jar;C:\mm.mysql.jdbc-1.2c; 이렇게 잡혀있습니다. 환경변수 변경이 끝나면 도스창을 새로 띄워서 set 를 치고 classpath 를 확인해봅니다. (사실
이것은 원 소스(createTable.java)를 dos창에서 컴파일하기 위한 것입니다. jsp만을 돌리려면 필요가 없습니다.)
그리고, 이 상태에서 jsp를 돌려보니 클래스 패스 타령입니다. 급한 맘에 mm.mysql.jdbc-1.2c 에 있는 org
폴더를 C:\Inetpub\wwwroot\WEB-INF\classes\ 에 복사해서 놓으니 인식을 하고 돌아가네요. 일단 소스를 공개합니다. about Oracle 8i(영진출판사) 에 있는 소스를 수정해서 올립니다.
MySQL 의 test DB는 말 그대로 테스트용입니다. 보안이 걸리지 않은 것입니다. 일단 연결되어서 테이블 생성하는 것이 이번 강좌의 목표입니다. 그리고, 일단 error 가 생긴다면 그것을 브라우저 상으로 보기 위해서 try {} catch (){} 을 주석 처리했습니다. try catch를 사용하면 무식한 에러 코드를 보지 않으셔도 됩니다. 하지만 개발할 때는 즉각 즉각 문제를 보고 해결하는 것이 더 현명하겠죠.. 물론 에러 없는 코드가 바로 짜지면 좋겠지만... 코드는 상자속의 상자처럼 생각하면 됩니다. 큰 상자를 준비합니다. Class.forName("db driver") 에서 드라이버를 준비합니다. Class 의 C는 대문자입니다. 그리고, 연결시키는 박스를 그 안에 집어넣습니다. DB_URL과 user, password 를 필요로 합니다. test 는 id와 password 를 비워둡니다. 나중에 계정을 통해서 접속하는 법을 알아야겠죠... statement를 받아옵니다. query를 실행시킵니다. 쿼리에는 두가지가 있습니다. 값을 가져오는 쿼리, 값을 가져오지 않는 쿼리. 값을 가져오는 쿼리는 Select 문 입니다. ResultSet 을 사용해서 값을 받아올 수 있습니다. 다른 것들은 실행결과 값을 int 값으로 받습니다. 0 일때는 제대로 처리가 되지 않았다는 뜻이죠. 그럴 경우에는 원상태로 돌립니다. RollBack이라고 하죠. 제대로 들어 갔을 때는 0 이 아닌 값이 반환됩니다. commit() 으로 말뚝을 밖은 다음에 상자를 꺼냅니다. 꼬이지 않게 잘 닫아줍니다. 연결이 다 끝난 다음은? 끝이죠 모. 소스를 wwwroot 밑에 저장하고 브라우저에서 불러봅니다. 제대로 실행이 되었다면 table created!! 를 볼 수 있고, 그 다음부터는 createTable 이 있다고 에러가 날 것입니다. query 변수의 쿼리를 바꿔서 실습해 보세요. 아! mysql 에 dos 창을 통해서 접속한 상태에서는 web에서 제대로 이용이 안되네요. 애고, 졸려.... 잘 정서해서 다시 올리겠습니다. 일단 성공하세요. 문서들은 좋은 것들이 많이 있네요... modified 2001-03-14 |
||
참고 : about Oracle 8i 376, 385 |
prev : back : next |
since 2000/12/05 |