Spring37 [Spring] inflearn 스프링 입문 - 스프링 DB 접근 기술 5 JPA JDBC -> JdbcTemplate : 반복적인 코드 줄음. but sql 쿼리는 직접 작성해야 함. JPA 기술을 사용하면 sql 쿼리도 JPA가 자동으로 처리. 개발 생산성 높임. 객체를 JPA에 넣으면 JPA가 중간에서 DB에 sql을 날리고 데이터를 db에서 가져오는 것 처리. sql, 데이터 중심 설계에서 객체 중심 설계로 전환. build.gradle dependency 추가. jpa관련 라이브러리 추가. implementation 'org.springframework.boot:spring-boot-starter-data-jpa' resources/application.properties JPA관련 설정 추가 jpa가 날리는 sql 볼 수 있음 spring.jpa.show-sql=tr.. 2022. 9. 15. [Spring] inflearn 스프링 입문 - 스프링 DB 접근 기술 4 스프링 JdbcTemplate MyBatis와 비슷한 라이브러리. JDBC API에서의 반복적인 코드를 제거한 라이브러리. sql은 직접 작성해야 함. JdbcTemplate을 써야 함. JdbcTemplate은 injection을 받을 수 있는 것은 아님. dataSource가 injection받음. 생성자가 딱 하나만 있으면 스프링 빈으로 등록되면 @Autowired 생략 가능 스프링이 자동으로 dataSource injection 해줌 src/main/java/hello/hellospring/repository/JdbcTemplateMemberRepository.java public class JdbcTemplateMemberRepository implements MemberRepository { .. 2022. 9. 15. [Spring] inflearn 스프링 입문 - 스프링 DB 접근 기술 3 스프링 통합 테스트 스프링을 올리고 db 연결해서 동작하는 통합 테스트 테스트케이스 - 필요한 것 injection 해서 쓰고 끝. 필드 injection 사용 구현체는 SpringConfig에서 올라옴 @Autowired MemberService memberService; @Autowired MemberRepository memberRepository; join test db에 spring이 이미 존재 db 데이터 지우기 delete from member 다시 join 회원 가입 테스트 (@Transactional 주석처리) spring을 띄우고 configuration이 올라옴. 테스트를 실행하고 테스트가 끝나면 spring이 내려감 테스트를 반복 할 수 있어야 함 다시 join 테스트 실행하면 오류.. 2022. 9. 15. [Spring] inflearn 스프링 입문 - 스프링 DB 접근 기술 2 순수 JDBC 애플리케이션에서 db에 연동하여 데이터베이스에 insert, select 쿼리를 날려 db에 넣고 빼기 데이터 저장 기술의 발전 build.gradle 에 추가 implementation 'org.springframework.boot:spring-boot-starter-jdbc' 자바는 db연동을 위해 JDBC driver가 있어야 함. 이걸 가지고 서로 연동 runtimeOnly 'com.h2database:h2' db와 붙을 때 데이터베이스가 제공하는 client 필요 resources/application.properties spring.datasource.url=jdbc:h2:tcp://localhost/~/test spring.datasource.driver-class-name=o.. 2022. 9. 15. [Spring] inflearn 스프링 입문 - 스프링 DB 접근 기술 1 H2 데이터베이스 설치 H2 데이터베이스 설치 데이터 베이스 sql 가지고 application server와 db 연결. 연결 시 필요한 기술 JDBC 스프링이 제공하는 JDBC template - application에서 database로 sql을 편리하게 날릴 수 있음. 보다 더 혁신적인 방법 - sql조차 개발자들이 직접 짜는 것이 아닌 sql을 JPA가 쿼리를 직접 만들어 날려줌 JPA를 쓰면 객체를 바로 DB에 쿼리 없이 저장. 스프링 데이터 JPA - 스프링에서 JPA를 편리하게 쓸 수 있도록 감싼 기술 H2데이터베이스 다운로드 : https://www.h2database.com/html/download-archive.html 권한 주기 cd h2 ll cd bin ls -arlth chmo.. 2022. 9. 14. [Spring] inflearn 스프링 입문 - 회원 관리 예제 - 웹 MVC 개발 회원 웹 기능 - 홈 화면 추가 memberController를 통해 회원 등록, 조회 홈 컨트롤러 추가 package hello.hellospring.controller; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.GetMapping; @Controller public class HomeController { @GetMapping("/") public String home() { return "home"; } } 아무것도 없으면 static/index.html로 감(welcome page) 그러나 우선순위 있음 웹 브라우저에서 요청이 오면 먼저 스프링 컨테이너 안에 관련 컨.. 2022. 9. 13. 이전 1 2 3 4 5 6 7 다음