인프런 영문 브랜드 로고
인프런 영문 브랜드 로고

인프런 커뮤니티 질문&답변

도전적인 멧돼지님의 프로필 이미지
도전적인 멧돼지

작성한 질문수

스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술

스프링 JdbcTemplate

save Method 질문

작성

·

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()에서 이미 값이 입력되었지요.

감사합니다.

도전적인 멧돼지님의 프로필 이미지
도전적인 멧돼지

작성한 질문수

질문하기