jdbc : insert

This commit is contained in:
haerong22
2022-04-18 21:07:15 +09:00
parent 1f4aed1e8c
commit 5eff4e2d8f
3 changed files with 102 additions and 0 deletions

View File

@@ -0,0 +1,18 @@
package com.example.jdbc.domain;
import lombok.Data;
@Data
public class Member {
private String memberId;
private int money;
public Member() {
}
public Member(String memberId, int money) {
this.memberId = memberId;
this.money = money;
}
}

View File

@@ -0,0 +1,65 @@
package com.example.jdbc.domain;
import com.example.jdbc.connection.DBConnectionUtil;
import lombok.extern.slf4j.Slf4j;
import java.sql.*;
/**
* JDBC - DriverManager 사용
*/
@Slf4j
public class MemberRepositoryV0 {
public Member save(Member member) throws SQLException {
String sql = "insert into member(member_id, money) values(?, ?)";
Connection con = null;
PreparedStatement pstmt = null;
try {
con = getConnection();
pstmt = con.prepareStatement(sql);
pstmt.setString(1, member.getMemberId());
pstmt.setInt(2, member.getMoney());
pstmt.executeUpdate();
return member;
} catch (SQLException e) {
log.error("db error", e);
throw e;
} finally {
close(con, pstmt, null);
}
}
private void close(Connection con, Statement stmt, ResultSet rs) {
if (rs != null) {
try {
rs.close();
} catch (SQLException e) {
log.error("error", e);
}
}
if (stmt != null) {
try {
stmt.close();
} catch (SQLException e) {
log.error("error", e);
}
}
if (con != null) {
try {
con.close();
} catch (SQLException e) {
log.error("error", e);
}
}
}
private Connection getConnection() {
return DBConnectionUtil.getConnection();
}
}

View File

@@ -0,0 +1,19 @@
package com.example.jdbc.domain;
import org.junit.jupiter.api.Test;
import java.sql.SQLException;
import static org.junit.jupiter.api.Assertions.*;
class MemberRepositoryV0Test {
MemberRepositoryV0 repository = new MemberRepositoryV0();
@Test
void crud() throws SQLException {
Member member = new Member("memberV0", 10000);
repository.save(member);
}
}