ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • JSP-JDBC를 이용하여 글 목록 구현하기
    Servlet-JSP 2022. 1. 26. 21:20

    **유튜브 뉴렉쳐님의 강의를 들으면서 공부하고 정리한 내용입니다.

     

     

    오늘은 JDBC를 이용하여 DB 연결을 하려고 한다.

     

    표시한 부분을 데이터베이스를 이용하여 바꾸어보려고 한다.

     

     

    저번에 JDBC 공부 할 때 사용했던 program이라는 파일에서

    		String url = "jdbc:oracle:thin:@localhost:1521/xepdb1";
    		String sql = "SELECT * FROM NOTICE";
    		
    		Class.forName("oracle.jdbc.driver.OracleDriver");
            //여기까지가 데이터베이스를 연결하기 위한 블럭이고
            
            
    		Connection con = DriverManager.getConnection(url,"sys as sysdba", "Ew170916!!");
    		Statement st = con. createStatement();
    		ResultSet rs = st.executeQuery(sql);
            //코드를 실행해서 결과를 얻어오는 블럭이다.

    요만큼을 복사 해 준다.

     

    그리고 저 세가지 클래스는 close() 기능을 함께 써줘야하는데 

     

    close 코드는 html코드가 끝나는 맨 마지막 부분에 코드블럭을 생성해서 작성 해 준다.

     

    close() 코드를 작성 해 주어도 계속 빨간줄이 그어져있는데 그 이유는 저 클래스들을 사용하려면 클래스가 속해 있는 패키지명을 전부 작성해주거나 아니면 import라는 구문을 통해서 넣어주어야 빨간 경고줄이 사라지게 된다..

     

    근데 코드블럭에서는 import를 어떻게 해야하는지 모른다. 

    그때 어떻게 하면 되냐면 빨간 경고줄이 뜬 곳 끝에 마우스 포인터를 두고 ctrl+space 를 해 주면

    이렇게 여러개의 패키지명이 뜨는데 우리는 표시한 java.sql을 클릭 해 준다. enter 키를 눌러도 된다.

    이런식으로 나머지 경고줄이 뜬 클래스들도 import 해 주고 나면(전부 sql로 해 줘야한다.)

    경고줄이 사라지는 것을 확인 할 수 있고 이제 사용 할 수 잇는 준비가 된 것이다.

     

    그럼 이제 notice테이블에 있는 데이터를 resultSet을 통해서 가져 올 것이고 그것을 반복적으로 가져오도록 할 것이다. 

     

    그럼 이제 데이터를 출력해야하는 코드를 한번 수정해보자 

    기존에 for문으로 반복하던것을 지정 된 숫자가 아닌 notice가 가지고 있는 레코드 수 만큼 반복하기 위해 for문을 while문으로 바꾸어 주고 그냥 값을 입력 했던 것들을 코드블럭을 통해서 값을 가져 올 수 있도록 해준다.

    바꾸어 준 후에 실행을 해보았는데

    에러가 발생했다..

    javax.servlet.ServletException: java.lang.ClassNotFoundException: oracle.jdbc.driver.OracleDriver

    오라클 드라이버가 클래스가 없다는 에러가 발생했다.

     

    그 이유는 우리가 JDBC를 사용하려면 JDBC를 설정 해 주는 JDBC 드라이버가 필요하다. 

    그 전에는 그냥 BUILD PATH에서 JAR 파일을 추가해주면 끝이였는데 웹프로젝트는 그렇게 하면 안된다.

    그 자료 파일이 컴파일과 실행 할 때에도 필요하게 되는데 이클립스에서 컴파일하고 실행은 톰캣으로 배포되어서 실행이 되는데 실행 될 때에 BUILD PATH가 달라지게 되고 하기 때문에 웹개발 할 때에는 웹에서 사용하는 라이브러리가 배표시에도 사용되기 떄문에 라이브러리를 같이 가져가야한다. 

     

    라이브러리를 같이 배포 할 수 있도록 라이브러리도 같이 추가 해 줘야한다.

    WEB-INF파일 안에 lib라고 라이브러리를 추가 할 수 있는 폴더가 있다. 

    저 폴더에 우리가 사용 할 자료파일을 담아주면 된다. 

     

    그럼 ojdbc8.jar 파일을 lib 폴더에 넣어주고 실행을 다시 해보면

    짜잔 이렇게 내가 넣은 데이터들이 넣어져서 출력 되는 것을 확인 할 수 있다. 

Designed by Tistory.