JDBC 에 연 결 된 6 단계 인 스 턴 스 코드(my sql 과 연결)
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 연결 내용 은 우리 의 이전 글 을 검색 하거나 아래 의 관련 글 을 계속 찾 아 보 세 요.앞으로 도 많은 응원 부 탁 드 리 겠 습 니 다!
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
Java 애플리케이션을 모든 SQL 데이터베이스와 연결그래서 오늘 이 기사를 통해 JDBC를 통해 Java 애플리케이션을 SQL 데이터베이스에 연결하기 위해 작성할 수 있는 각 줄을 설명하는 심층 가이드를 제공하여 그들과 모든 커뮤니티를 도우려고 합니다. JDBC는 J...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.