티스토리 뷰

JSP와 Servlet만 이용해서 만드는 게시판

1. 스크립트 파일도 나눈다.
2. 페이징 한다.
3. 다중 첨부파일 가능 → 첨부파일의 개수가 리스트에 나와야 한다.
4. 검색기능 → 제목/작성자/내용/첨부파일 이름
5. 조회수 list에 추가 

# 모델 2로 구현하는 자바 웹 프로그래밍 JSP2.2&Servlet3.0 책 참고 


라이브러리 설정 및 커넥션 풀 작성  

저번 포스팅에서 게시판 데이터 베이스 구조를 설계하였다. 
데이터 빈 클래스를 작성하기 전에 라이브러리 설정 및 커넥션 풀 을 작성하겠다.

데이터 베이스와 연동하기 위해서 JDBC 드라이버를 설치해야 한다.

mysql-connector-java-5.1.40-bin.jar

이 파일을 받아 이클립스 프로젝트의 WEB-INF 안의 lib안에 넣어주면 DBMS와 연동하여 JDBC API를 사용할 수 있게 해준다.

또한 커넥션 풀은 데이터베이스와 연결된 Connection 객체를 미리 생성하여 Pool속에 저장해 두고 필요할 때마다 이 풀에 접근하여 Connection 객체를 사용하고, 작업이 끝나면 다시 반환하는 것을 말하는데 커넥션 풀을 생성하여 프로그램 효율과 성능을 증가 시킬 수 있다.

자카르타 DBCP API를 이용하여 커넥션 풀을 생성할것인데 jar 파일을 설치하고, DBCP에 관한 정보 설정을 위해 context.xml 파일을 작성해야 하고, JNDI 리소스 사용 설정을 위해 web.xml을 수정해주어야 한다. 

JNDI는 Java Naming and Directory Interface 로 명명 서비스 및 디렉토리 서비스에 접근하기 위한 API를 말한다.

commons-collections4-4.1.jar

commons-dbcp2-2.1.1.jar

commons-pool2-2.4.2.jar

이 파일들을 받아 이클립스 프로젝트의 WEB-INF 안의 lib 안에 넣어준다.

context.xml 파일을 작성한다. WebContent\META-INF 폴더에 위치해야 한다. 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
<?xml version="1.0" encoding="UTF-8"?>
 
<Context>
    <Resource name="jdbc/MariaDB"
        auth="Container"
        type="javax.sql.DataSource"
        driverClassName="com.mysql.jdbc.Driver" 
        loginTimeout="10"
        maxWait="5000"  
        username="ID"
        password="PW"
        testOnBorrow="true"
        url="jdbc:mysql://localhost:3306/haeun" />            
</Context>
cs


그 다음엔 context.xml 파일과 연동하기 위해 Webcontent\WEB-INF 폴더 내에 있는 web.xml을 수정한다.

1
2
3
4
5
6
<resource-ref>
      <description>Connection</description>
      <res-ref-name>jdbc/MariaDB</res-ref-name<!-- context.xml에서 설정해준 이름  -->
      <res-type>javax.sql.DataSource</res-type>
      <res-auth>Container</res-auth>
  </resource-ref>
cs


파일 안에 추가해준다.



그리고 마지막으로 저번 포스팅에서도 말했지만, 파일 업로드를 나중에 하려고 제쳐두었는데, 이 책에서는 이부분에서 
파일 업로드에 대한 라이브러리도 추가해주었다. 

그래서 나도 여기에서 넣어놓고 가겠다.

cos.jar

COS 라이브러리는 java에서 가장 널리 쓰여지는 업로드 컴포넌트라고 한다. 이 파일또한 WEB-INF안의 lib안에 넣는다.



다음 포스팅에서 이제 데이터빈(=VO) 클래스를 작성해보겠다.


댓글