-
카테고리
-
세부 분야
백엔드
-
해결 여부
미해결
repository관련 질문
24.03.13 11:08 작성 24.03.13 11:11 수정 조회수 94
0
repository 코드입니다.
private static long sequence = 0L;
private DataSource dataSource;
public DbMemberRepository(DataSource dataSource) {
this.dataSource = dataSource;
}
public void save(String memberId, String password) throws SQLException {
String sql = "insert into member(id, member_id, password) values(?,?,?)";
try {
Connection con = null;
PreparedStatement pstmt;
con = getConnection();
pstmt = con.prepareStatement(sql);
pstmt.setLong(1, ++sequence);
pstmt.setString(2, memberId);
pstmt.setString(3, password);
log.info(String.valueOf(sequence));
pstmt.execute();
} catch (SQLException e) {
throw new SQLException("sql exception");
}
}
@Test
void save() throws SQLException {
memberRepository.save("test1", "test1!");
//memberRepository.save("test2", "test2!");
}
위 코드에서 save테스트를 돌릴 때 save test를 두번 누르면 sequence(id)가 1, 2로 저장된다고 생각했는데 에러가 나고 test코드내에서 memberRepository.save를 두번적으면 되더라고요. 왜 전자처럼 두번누르는 것은 예외가 나나요?
답변을 작성해보세요.
답변 1