본문 바로가기

개발자노트/DBMS

[SQL] JDBC에서 중복코드를 최소화 해주는 [JDBCUtil]

우리가 일상에서 유용하게 사용되는 것들을 Utility 하다고 표현하듯이,

JDBC을 사용할 때 유용하게 쓸 수 있는 기능들을 모아논 것들을[JDBCUtil]이라고 한다. 

 

이 클래스를 왜 사용할까?

1) C R R U D 에서 계속 사용됨..
2) DAO가 증가하면 또 CRUD도 증가됨 → ...

→ ctrl+c, ctrl+v 하는 일이 많아짐!

→ but Util을 사용하여  중복코드를 최소화 하기 위해 이것들을 모듈화! 하는 것이 Util클래스 

     // 우리가 JDBC에서 많이 사용 되는 것들을 모듈화 해줄 것이다.
     // static이 붙은 것은 객체를 만들어서 사용할 것이 아닌 객체와 무관하게 사용할 것이라
     // static으로 시작하게 된다.
     // 또한 수정 될 일이 없으니 final 까지 사용
     // 여기서 알 수 있는게 우리가 전에 공부 한 "인터페이스" 와 유사한 것을 알 수 있음!
       static final String driverName="oracle.jdbc.driver.OracleDriver";
	   static final String url="jdbc:oracle:thin:@localhost:1521:xe";
	   static final String user="kim";
	   static final String passwd="1234";
	  
	   public static Connection connect() {
	      Connection conn=null;
	      try {
	         Class.forName(driverName);

	         conn=DriverManager.getConnection(url, user, passwd);
	      } catch (Exception e) {
	         // TODO Auto-generated catch block
	         e.printStackTrace();
	      }
	      return conn;
	   }
	   public static void disconnect(PreparedStatement pstmt,Connection conn) { 
       // pstmt와 conn 을 사용할 때 마다 닫아주게 되는데,
       // 이 때 try catch까지 완료한 것을 메서드로 만들어 놓으면 사용할 때마다
       // 예외처리를 하지 않아도 돼서 편리해짐!!
	      try {
	         pstmt.close();
	         conn.close();
	      } catch (SQLException e) {
	         // TODO Auto-generated catch block
	         e.printStackTrace();
	      }
	   }
	}