JDBC 에 연 결 된 6 단계 인 스 턴 스 코드(my sql 과 연결)

5312 단어 jdbc잇닿다mysql
JDBC 의 6 단계:
1.등록 드라이버
2.데이터베이스 연결 가 져 오기
3.데이터베이스 작업 대상 가 져 오기
4.sql 문장 실행
5.조회 결과 집합 처리(실 행 된 구문 에 selection 구문 이 없 으 면 쓰 지 않 아 도 됩 니 다)
6.자원 닫 기
STEP 1:등록 드라이버

//          
//                ,    
DriverManager.register(new com.mysql.jdbc.Driver());
//  
Class.forName("com.mysql.jdbc.Driver");
 
 
//    
DriverManager.register(new com.mysql.cj.jdbc.Driver());
//  
Class.forName("com.mysql.cj.jdbc.Driver");
두 번 째 단계:데이터베이스 연결 가 져 오기

//     try..catch,        ,    try       
Connection conn = null;
...
//    Connection,       url      
// jdbc:mysql://localhost:3306/t_use        , t_use          
//  
conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/t_use","   ","  ");
 
 
//  
conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/t_use?serverTimezone=GMT%2B8","   ","  ");
STEP 3:데이터베이스 작업 대상 가 져 오기

//      Connection    
Statement st = null;
...
//          
st = conn.createStatement();
네 번 째 단계:sql 문 구 를 실행 합 니 다.

//     sql  
String sql = " ";
//              sql  
//        ,    select        ,      int,          
st.executeUpdate(sql);
 
//  sql   select  ,           ,       ResultSet  ,      
//          
ResultSet rs = null; // Connection   
rs = st.executeQuery(sql);
STEP 5:조회 결과 집합 처리

//    select       ,    getString   getInt 
while(rs.next()){
    String str = rs.getString("          ");
}
STEP 6:자원 닫 기

//       try     ,     finally   
//    
            if (rs != null) {
                try {
                    rs.close();
                } catch (SQLException throwables) {
                    throwables.printStackTrace();
                }
            }
 
            if (st != null) {
                try {
                    st.close();
                } catch (SQLException throwables) {
                    throwables.printStackTrace();
                }
            }
 
            if (conn != null) {
                try {
                    conn.close();
                } catch (SQLException throwables) {
                    throwables.printStackTrace();
                }
            }
연결 을 닫 는 것 도 순서 가 있 습 니 다.ResultSet 을 먼저 닫 고 Statement 대상 을 닫 고 마지막 으로 Connection 대상 을 닫 습 니 다.
전체 코드

package jdbc.com;
import com.mysql.cj.protocol.Resultset;
 
import java.sql.*;
public class Test02 {
    public static void main(String[] args) {
 
        Connection conn = null;
        Statement st = null;
        ResultSet rt = null;
        try {
            //    (        )
            //com.mysql.cj.jdbc.Driver Driver = new com.mysql.cj.jdbc.Driver();
            DriverManager.registerDriver(new com.mysql.cj.jdbc.Driver());
            //       
            conn=DriverManager.getConnection("jdbc:mysql://localhost:3306/liu2?serverTimezone=GMT%2B8","   ","  ");
            //         
            st = conn.createStatement();
            //  sql  
            String sql = "select ename,sal from emp order by sal desc";
            rt = st.executeQuery(sql);
            //      
           while(rt.next()){
               String ename = rt.getString("ename");
               String sal = rt.getString("sal");
               System.out.println(ename + "," + sal);
           }
        } catch (SQLException throwables) {
            throwables.printStackTrace();
        }finally {
            //    
            if (rt != null) {
                try {
                    rt.close();
                } catch (SQLException throwables) {
                    throwables.printStackTrace();
                }
            }
 
            if (st != null) {
                try {
                    st.close();
                } catch (SQLException throwables) {
                    throwables.printStackTrace();
                }
            }
 
            if (conn != null) {
                try {
                    conn.close();
                } catch (SQLException throwables) {
                    throwables.printStackTrace();
                }
            }
 
 
        }
    }
}
마지막 으로 이 값 을 입력 하려 면 sql 의 주입 을 초래 할 수 있 습 니 다.해결 방법 은 Statement 을 Prepared Statement 으로 바 꾸 면 sql 의 주입 문 제 를 피 할 수 있 습 니 다.다만 세 번 째 단계 와 네 번 째 단계 코드 가 약간 변화 가 있 을 뿐 더 이상 말 하지 않 겠 습 니 다.
총결산
JDBC 연결(my sql 과 연결)에 관 한 이 글 은 여기까지 소개 되 었 습 니 다.더 많은 관련 JDBC 와 my sql 연결 내용 은 우리 의 이전 글 을 검색 하거나 아래 의 관련 글 을 계속 찾 아 보 세 요.앞으로 도 많은 응원 부 탁 드 리 겠 습 니 다!

좋은 웹페이지 즐겨찾기