2014년 5월 29일 목요일

[SPRING]자바로 프레임 워크 만들기

1.JdbcHelper.java
  1. package naver.cafe.jjdev.jdbc;
  2.  
  3. import java.sql.Connection;
  4. import java.sql.DriverManager;
  5. import java.sql.SQLException;
  6. import java.sql.Statement;
  7. import java.util.Set;
  8.  
  9. public class JdbcHelper {
  10. //  private DataSource dataSource; 
  11.     private Connection conn;
  12.     private Statement stmt;
  13.    
  14.     public void connect(String url,String user,String pw){
  15.         try {
  16.         //  this.conn = dataSource.getConnection();
  17.             this.conn = DriverManager.getConnection(url,user,pw);
  18.             System.out.println(url+"에 접속 성공!");
  19.         } catch (SQLException e) {
  20.             throw new SQLRuntimeException(e);
  21.         }
  22.     }
  23.    
  24.     public int executeUpdate(String query){
  25.         try {
  26.             this.stmt = this.conn.createStatement();
  27.             // 입력, 수정, 삭제 코드 구현...
  28.         } catch (SQLException e) {
  29.             throw new SQLRuntimeException(e);
  30.         }
  31.         return 0;
  32.     }
  33.    
  34.     public Set<Object> executeQuery(String query){
  35.         try {
  36.             this.stmt = this.conn.createStatement();
  37.             // 조회 코드 구현...
  38.         } catch (SQLException e) {
  39.             throw new SQLRuntimeException(e);
  40.         }
  41.         return null;
  42.     }
  43. }
2.SQLRuntimeException
  1. package naver.cafe.jjdev.jdbc;
  2.  
  3. import java.sql.SQLException;
  4.  
  5. public class SQLRuntimeException extends RuntimeException {
  6.     private static final long serialVersionUID = 1L;
  7.     public SQLRuntimeException(){}
  8.     public SQLRuntimeException(SQLException e){
  9.         System.out.println("실제 일어난 예외 메세지:"+e.getMessage());
  10.         e.printStackTrace();
  11.     }
  12. }
3.MainTest
  1. package naver.cafe.jjdev.jdbc.test;
  2.  
  3. import naver.cafe.jjdev.jdbc.JdbcHelper;
  4.  
  5. public class MainTest {
  6.     public static void main(String[] args){
  7.         /*
  8.             Class.forName("");사용하여 드라이버 로딩
  9.             또는 커넥션풀안에서 DataSource를 로딩...
  10.             DataSource dataSource = ......
  11.         */
  12.        
  13.         /*****************************************************
  14.         JdbcHelper프레임워크를 사용하면 JDBC API는
  15.         프레임워크 안으로 숨겨지고 예외도 강제하지 않는다.
  16.         ******************************************************/
  17.        
  18.         JdbcHelper jdbcHelper = new JdbcHelper();
  19.         jdbcHelper.connect("url입력""user입력","pw입력");
  20.         // jdbcHelper.connect(dataSource)
  21.         jdbcHelper.executeQuery("SELECT * FROM table이름");
  22.     }
  23. }
자바 프로젝트를 jar로 임포트해서 이 프레임 워크를 사용할 프로젝트의 외부 라이브러리에 추가하여 사용

댓글 없음:

댓글 쓰기