인프런 김영한 선생님 스프링 입문 강의를 보고 정리한 내용입니다. @ResponseBody html에 나오는 바디 태그가 아니라 http body에 이 데이터를 직접 넣어주겠다는 의미 해당 어노테이션을 작성하면 ViewResolver 대신 HttpMessageConverter가 동작한다. 문자열인 경우 문자열 그대로 반환 (StringConverter) 객체인 경우 JSON 형식으로 반환 (JsonConverter / MappingJackson2HttpMessageConverter) 위처럼 리턴값을 작성하면 뷰 대신 문자열을 출력하며, 위처럼 리턴값이 객체이면 JSON을 출력한다. 주소창에 입력하면 이렇게 JSON이 반환된 것을 확인할 수 있다.
문제 발생 @DataJpaTest를 사용하려던 도중 에러가 발생했다. 강의 내에선 이 에러를 짚지 않고 넘어갔기에 혼자서 해결해야 했다. (왜 나만 발생한 건지 의문이다.. 심지어 물어보시는 분들도 없었다..) Error creating bean with name 'dataSourceScriptDatabaseInitializer' 에러메시지만 읽었을 때 데이터베이스가 초기화되지 않았다는 것을 느꼈다. 그리고 구글링을 통해 dataSource를 Bean으로 등록하지 못했으니 database를 embedded 하고 싶으면 @AutoConfigureTestDatabase의 설정을 하라는 것을 알 수 있었다. 문제 원인 문제 원인을 파악하기 위해 내가 작성한 @DataJpaTest와 해결방법인 @AutoConf..