작성
·
313
0
public Member save(Member member) {
// SimpleJdbcInsert는 SQL문을 대체함 (Insert SQL 문을 구성하는 테이블명, PK , 필드명은 필요함)
SimpleJdbcInsert jdbcInsert = new SimpleJdbcInsert(jdbcTemplate);
jdbcInsert.withTableName("member").usingGeneratedKeyColumns("id");
Map<String, Object> parameters = new HashMap<>();
parameters.put("name", member.getName());
Number key = jdbcInsert.executeAndReturnKey(new
MapSqlParameterSource(parameters));
member.setId(key.longValue());
return member;
}
SimpleJdbcInsert의 동작방식이 이해가 가지 않습니다.
member.setId(key.longValue()) 에서
멤버에 ID 값을 세팅한 것은 이해가되는데
setName은 어떻게했는지 이해가 가지 않습니다.
답변 1
0
안녕하세요. 영찬님
setName은 save() 호출전에 이미 밖에서 값이 입력되어 넘어왔습니다.
MemberController.create()에서 이미 값이 입력되었지요.
감사합니다.