먼저, JDBC를 이용해 MySQL과 Java를 연결하는 방법은 아래 게시글을 참조해주세요.
1.바로 실전으로!
1.1 CREATE TABLE (테이블 만들기)
package main;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import com.mysql.cj.xdevapi.Result;
import config.DBConnectionMgr;
public class Main2 {
public static void main(String[] args) {
//우리는 이것을 pool이라고 부르기로 했어요
DBConnectionMgr pool = DBConnectionMgr.getInstance();
Connection con = null;
PreparedStatement pstmt = null;
ResultSet rs = null;
//CREATE TABLE
try {
con = pool.getConnection();
System.out.println("성공적으로 연결");
String sql = "CREATE TABLE IF NOT EXISTS TEST_TB("
+ "`test_id` INT NOT NULL AUTO_INCREMENT,"
+ "`test_name` VARCHAR(45) NOT NULL,"
+ "`test_address` VARCHAR(45) NOT NULL,"
+ "PRIMARY KEY (`test_id`));";
pstmt = con.prepareStatement(sql);
pstmt.execute();
} catch(Exception e) {
e.printStackTrace();
} finally {
pool.freeConnection(con, pstmt, rs);
}
}
}
SQL에 들어가보면 DDL 쿼리문대로 생성 완료!
1.2 Insert (값 넣기)
public class Main2 {
public static void main(String[] args) {
DBConnectionMgr pool = DBConnectionMgr.getInstance();
Connection con = null;
PreparedStatement pstmt = null;
ResultSet rs = null;
//////// Insert into ////////
try {
//DB에 연결
con = pool.getConnection();
//쿼리문 작성
String sql = "insert into test_tb values(0, ?, ?)";
//쿼리문 가공준비
pstmt = con.prepareStatement(sql);
//쿼리문 가공
pstmt.setString(1,"ShinyDev"); //1번(째 물음표)에 값 저장
pstmt.setString(2,"https://dogfoot-er.tistory.com/");
//쿼리문 실행
int successCount = pstmt.executeUpdate();
System.out.println("\n insert 성공횟수 : " + successCount +"\n");
} catch (Exception e) {
e.printStackTrace();
} finally {
pool.freeConnection(con, pstmt);
}
}
}
1.3. select * from( 테이블 조회)
public class Main2 {
public static void main(String[] args) {
DBConnectionMgr pool = DBConnectionMgr.getInstance();
Connection con = null;
PreparedStatement pstmt = null;
ResultSet rs = null;
//////// select * from ////////
try {
con = pool.getConnection();
String sql = "select * from test_tb";
pstmt = con.prepareStatement(sql);
rs = pstmt.executeQuery();
System.out.println("번호\t|\t아이디\t|\t비밀번호");
while(rs.next()) {
System.out.println(rs.getInt(1) + "\t|\t" + rs.getString(2) + "\t|\t" + rs.getString(3));
}
} catch (Exception e) {
e.printStackTrace();
} finally {
pool.freeConnection(con, pstmt, rs);
}
}
}
2. 해설
2.1 공통부분
'Back-End > Java' 카테고리의 다른 글
(전공 정리) 3강 - 배열, String, Scanner, 클래스, 접근제어자, 생성자 (0) | 2024.06.22 |
---|---|
(전공 정리) 2강 - 변수, 자료형, 연산자, 반복문, 제어문 (0) | 2024.06.22 |
자바 Servlet 기초 예제(doGet : 데이터 조회) (0) | 2023.08.31 |
mySQL과 Java 연결하기(JDBC 라이브러리) (0) | 2023.07.26 |
for문, if문만 이용해 소수 찾는 프로그램 만들기 (기록용) (0) | 2023.05.27 |
Scanner(데이터 입력), 연산자 (0) | 2023.05.25 |