jdbc : select
This commit is contained in:
@@ -1,9 +1,11 @@
|
|||||||
package com.example.jdbc.domain;
|
package com.example.jdbc.repository;
|
||||||
|
|
||||||
import com.example.jdbc.connection.DBConnectionUtil;
|
import com.example.jdbc.connection.DBConnectionUtil;
|
||||||
|
import com.example.jdbc.domain.Member;
|
||||||
import lombok.extern.slf4j.Slf4j;
|
import lombok.extern.slf4j.Slf4j;
|
||||||
|
|
||||||
import java.sql.*;
|
import java.sql.*;
|
||||||
|
import java.util.NoSuchElementException;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* JDBC - DriverManager 사용
|
* JDBC - DriverManager 사용
|
||||||
@@ -32,6 +34,35 @@ public class MemberRepositoryV0 {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public Member findById(String memberId) throws SQLException {
|
||||||
|
String sql = "select * from member where member_id = ?";
|
||||||
|
|
||||||
|
Connection con = null;
|
||||||
|
PreparedStatement pstmt = null;
|
||||||
|
ResultSet rs = null;
|
||||||
|
|
||||||
|
try {
|
||||||
|
con = getConnection();
|
||||||
|
pstmt = con.prepareStatement(sql);
|
||||||
|
pstmt.setString(1, memberId);
|
||||||
|
|
||||||
|
rs = pstmt.executeQuery();
|
||||||
|
if (rs.next()) {
|
||||||
|
Member member = new Member();
|
||||||
|
member.setMemberId(rs.getString("member_id"));
|
||||||
|
member.setMoney(rs.getInt("money"));
|
||||||
|
return member;
|
||||||
|
} else {
|
||||||
|
throw new NoSuchElementException("member not found memberId=" + memberId);
|
||||||
|
}
|
||||||
|
} catch (SQLException e) {
|
||||||
|
log.error("db error", e);
|
||||||
|
throw e;
|
||||||
|
} finally {
|
||||||
|
close(con, pstmt, rs);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
private void close(Connection con, Statement stmt, ResultSet rs) {
|
private void close(Connection con, Statement stmt, ResultSet rs) {
|
||||||
|
|
||||||
if (rs != null) {
|
if (rs != null) {
|
||||||
@@ -1,19 +0,0 @@
|
|||||||
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);
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
@@ -0,0 +1,28 @@
|
|||||||
|
package com.example.jdbc.repository;
|
||||||
|
|
||||||
|
import com.example.jdbc.domain.Member;
|
||||||
|
import lombok.extern.slf4j.Slf4j;
|
||||||
|
import org.assertj.core.api.Assertions;
|
||||||
|
import org.junit.jupiter.api.Test;
|
||||||
|
|
||||||
|
import java.sql.SQLException;
|
||||||
|
|
||||||
|
@Slf4j
|
||||||
|
class MemberRepositoryV0Test {
|
||||||
|
|
||||||
|
MemberRepositoryV0 repository = new MemberRepositoryV0();
|
||||||
|
|
||||||
|
@Test
|
||||||
|
void crud() throws SQLException {
|
||||||
|
// save
|
||||||
|
Member member = new Member("memberV0", 10000);
|
||||||
|
repository.save(member);
|
||||||
|
|
||||||
|
// findById
|
||||||
|
Member findMember = repository.findById(member.getMemberId());
|
||||||
|
log.info("findMember={}", findMember);
|
||||||
|
|
||||||
|
Assertions.assertThat(findMember).isEqualTo(member);
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user