inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

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

스프링 JdbcTemplate

선생님 질문있습니다.

215

좋은 백조

작성한 질문수 37

0

선생님 이부분에서 @autowired 를 생략해도 된다고 하셨는데  만약에 생략하지 않는 다고 했을때 저 클래스 위에 @repository는 필요하지 않은건가요?

빈에 등록했을때 클래스랑 생성자위에 autowired도 안붙이고 @service나 @repository 생략이 가능하고 컨트롤러에만 @controller 과 @autowired가 필요하다고 저번강의에서 말씀하신건데 이 맥락에서 이해하면 되는걸까요?

그리고 두번째로 

jdbcInsert = new SimpleJdbcInsert(dataSource).withTableName("Student");

이소스코드는 simplejdbcinsert에 바로 dataSource를 인자로 넣었습니다. 그런데 선생님꼐서는 jdbctemplate을 인자로 넣어주셨습니다... 무슨차이인가요?

MapSqlParameterSource

그리고 선생님 이 인터페이스에 대해서 알고싶습니다 . 이 인터페이스가 구체적으로map이나 string 등 value가 들어가게되면 반환은 어떻게 되는지 궁금합니다.

spring spring-boot java MVC

답변 1

0

김영한

안녕하세요. 010님

선생님 이부분에서 @autowired 를 생략해도 된다고 하셨는데  만약에 생략하지 않는 다고 했을때 저 클래스 위에 @repository는 필요하지 않은건가요?

-> 이 부분이 어디인지요? 예제 코드로 자세히 설명해주시겠어요?

두번째 질문은 사실 같은 결과가 됩니다. dataSource를 넣어주시면 내부에서 JdbcTemplate을 만들어서 넣어줍니다. 그래서 두 방법중에 편한 방법을 사용하시면 됩니다.

MapSqlParameterSource는 인터페이스가 아니라 실제 구현 클래스입니다. 이 클래스를 사용하면 다음에서 설정한 내용을 insert sql의 파라미터로 사용할 수 있게 준비합니다.

Map<String, Object> parameters = new HashMap<>();

parameters.put("name", member.getName());

그리고 실제 사용할 때는 내부에서 루프를 돌면서 하나씩 꺼내서 sql 파라미터로 사용합니다.

감사합니다.

..

0

74

2

Unused property.....

0

98

2

project JDK is misconfigured

0

129

2

외부 API의 ID 타입(String/UUID)과 내부 도메인의 ID 타입(Long)이 불일치할 때의 설계 정석

0

82

2

단위/통합 테스트 버전충돌 문제

0

91

2

❗️springboot 4.0.2 버전 aspectj dependency 설정❗️

0

227

1

왜 컨트롤러는 변한게 없는데 새로 만든 html 파일이 뜨나요?

0

101

2

윈도우 build test오류 질문

1

102

2

테스트 관련 공부에 대한 조언을 얻고 싶습니다

0

98

2

테스트 실행 시 에러 질문

0

289

1

name을 통한 비교와 객체를 통한 비교

0

77

1

빌드 후 libs 없음

1

128

1

윈도우 gradlew.bat 에러

0

167

1

@PostMapping("/members/new")가 동작하지 않습니다

0

88

1

java static class와 kotlin class

0

77

1

스프링 DB연결

0

126

1

소요 시간

0

85

2

ddl.sql에 빨간 밑줄

1

101

2

welcome page 에러

0

180

3

잘 모르겠습니다.

0

163

2

fail을 똑같이 쳤는데 오류가 발생해요

0

156

2

index.html Welcome page

0

120

1

프로젝트 gradle-groovy ?

0

364

1

테스트코드 메서드명 한글

0

198

2