관리 메뉴

nalaolla

프로시져 호출하여 리스트 출력 본문

JAVA/26. JDBC

프로시져 호출하여 리스트 출력

날아올라↗↗ 2015. 12. 9. 16:56
728x90
반응형
  1. package test.com.board.view;
  2.  
  3. import java.sql.CallableStatement;
  4. import java.sql.Connection;
  5. import java.sql.DriverManager;
  6. import java.sql.ResultSet;
  7. import java.sql.ResultSetMetaData;
  8. import java.sql.SQLException;
  9.  
  10. public class BoardMain {
  11.  
  12.     private static final String DRIVER_NAME = "oracle.jdbc.OracleDriver";
  13.     private static final String URL = "jdbc:oracle:thin:@localhost:1521:XE";
  14.     private static final String USER = "java_project";
  15.     private static final String PASSWORD = "hi123456";
  16.    
  17.  
  18.     public static void main(String[] args) {
  19.  
  20.         Connection conn = null;
  21.         CallableStatement st = null;
  22.         ResultSet rs = null;
  23.        
  24.         BoardMain bm = new BoardMain();
  25.        
  26.         try {
  27.             conn = bm.getcon();
  28.             String sql = "call Up_Get_Board_Tab(?)";
  29.             st = conn.prepareCall(sql);
  30.             st.registerOutParameter(1, oracle.jdbc.OracleTypes.CURSOR);
  31.             st.execute();
  32.            
  33.             rs = (ResultSet) st.getObject(1);
  34.            
  35.             ResultSetMetaData rmd = rs.getMetaData();
  36.             System.out.print(rmd.getColumnName(1) + " ");
  37.             System.out.print(rmd.getColumnName(2) + " ");
  38.             System.out.print(rmd.getColumnName(3) + " ");
  39.             System.out.print(rmd.getColumnName(4) + " ");
  40.             System.out.print(rmd.getColumnName(5) + " ");
  41.            
  42.             while (rs.next()) {
  43.                 System.out.print(rs.getInt("num") + "    ");
  44.                 System.out.print(rs.getString("title") + "    ");
  45.                 System.out.print(rs.getString("content") + "    ");
  46.                 System.out.print(rs.getString("writer") + "    ");
  47.                 System.out.print(rs.getDate("regdate") + ");
  48.             }
  49.  
  50.         } catch (Exception e) {
  51.             // TODO: handle exception
  52.         } finally {
  53.             try {
  54.                 rs.close();
  55.             } catch (SQLException e) {
  56.                 // TODO Auto-generated catch block
  57.                 e.printStackTrace();
  58.             }
  59.            
  60.             try {
  61.                 st.close();
  62.             } catch (SQLException e) {
  63.                 // TODO Auto-generated catch block
  64.                 e.printStackTrace();
  65.             }
  66.            
  67.             try {
  68.                 conn.close();
  69.             } catch (SQLException e) {
  70.                 // TODO Auto-generated catch block
  71.                 e.printStackTrace();
  72.             }
  73.         }
  74.     }
  75.  
  76.     public Connection getcon() {
  77.        
  78.         Connection conn = null;
  79.        
  80.         try {
  81.             Class.forName(DRIVER_NAME);
  82.             conn = DriverManager.getConnection(URL, USER, PASSWORD);
  83.         } catch (ClassNotFoundException e) {
  84.            
  85.             e.printStackTrace();
  86.         } catch (SQLException e) {
  87.            
  88.             e.printStackTrace();
  89.         }
  90.         return conn;
  91.     }
  92.  
  93. }


728x90
반응형

'JAVA > 26. JDBC' 카테고리의 다른 글

java 코드 오라클 저장 프로시저 호출  (0) 2015.12.09
JDBC_간단게시판  (2) 2015.12.09