테스트 기반으로 JDBC 통해 DB CRUD #1
- 우아한테크코스
- 2021. 3. 26. 15:44
데이터베이스 생성하기
CREATE DATABASE db_name DEAFAUT CHARCTER SET utf8 COLLATE utf_8general_ci;
테이블 생성하기
CREATE TABLE USERS(
userId varchar(12) NOTNULL,
password varchar(12) NOTNULL,
name varchar(20) NOTNULL,
email varchar(50), NOTNULL,
PRIMARY KEY (userId)
);
데이터 CREATE
INSERT INTO USERS VALUES('1', 'password', 'nickname', 'email@naver.com');
JDBC CONNECTION
- 자바에서 데이터베이스와 연동을 하기 위해 사용하는 표준
- DAO(Data Access Object)는 데이터베이스와의 로직을 담당하는 클래스
@Test
public void connection() {
UserDAO userDao = new UserDAO();
Connection con = userDao.getConnection();
assertNotNull(con);
}
public class UserDAO {
public Connection getConnection() {
String url = "jdbc:mysql://localhost::3306/db_name";
String id = "slipp";
String pw = "password";
try {
Class.forName("com.mysql.jdbc.Driver");
} catch (Exception e) {
System.out.println(e.getMessage());
return null;
}
return DriverManager.getConnection(url, id, pw);
}
}
JDBC INSERT
public void insert(User user) {
String sql = "insert into USERS values(?,?,?,?)";
PreparedStatement pstmt = getConnection().prepareStatement(sql);
pstmt.setString(1, user.getUserId());
pstmt.setString(2, user.getPassword());
pstmt.setString(3, user.getName());
pstmt.setString(4, user.getEmail());
pstmt.executeUpdate();
}
- PreparedStatement의 set API의 경우 인덱스가 1부터 시작한다.
'우아한테크코스' 카테고리의 다른 글
테스트 기반으로 JDBC 통해 DB CRUD #3 (0) | 2021.03.27 |
---|---|
테스트 기반으로 JDBC 통해 DB CRUD #2 (0) | 2021.03.27 |
[우아한 테크코스 3기]Git은 정말 어려워요 (Rebase vs Merge) (0) | 2021.03.08 |
[우아한 테크코스 3기] 한달 회고 - LV1의 반이 지나가 버렸다. (2) | 2021.03.06 |
[우아한테크코스]지원과 프리코스 까지 후기 (0) | 2020.12.14 |