반응형 dev-ing/spring16 [Springboot] 스프링부트 기초 (16) AOP란? AOP 적용하기 공통 관심사항 핵심 관심사항 스프링 부트 기초, AOP에 대해 알아보자 AOP가 필요한 상황 상황 가정 = 모든 메서드의 실행시간을 측정해야 한다. 그런데 현재 메서드가 어마어마하게 많다. 모든 메서드의 호출 시간을 측정하고 싶을 때 공통 관심 사항(cross-cutting concern) vs 핵심 관심 사항(core concern) 회원 가입 시간, 회원 조회 시간을 측정하고 싶을 때 1. 예시로 회원 가입 시간과 회원 조회 시간을 측정하는 코드를 아래와 같이 작성합니다. package hello.hellospring.service; import hello.hellospring.domain.Member; import hello.hellospring.repository.MemberRepository; import hello.hel.. 2022. 11. 2. [Springboot] 스프링부트 기초 (15) JPA 스프링 데이터 JPA란? 스프링 데이터 JPA 적용하기 스프링 부트와 JPA만 사용해도 개발 생산성이 정말 많이 증가하고, 개발해야할 코드도 확연히 줄어듭니다. 여기에 스프링 데이터 JPA를 사용하면, 리포지토리에 구현 클래스 없이 인터페이스 만으로 개발을 완료할 수 있습니다. 그리고 반복 개발해온 기본 CRUD 기능도 스프링 데이터 JPA가 모두 제공하기 때문에, 개발자는 핵심 비즈니스 로직을 개발하는데, 집중할 수 있습니다. 스프링 데이터 JPA에 대해 알아보자 (앞의 JPA 설정을 그대로 사용합니다) 1. repository 경로에 스프링 데이터 JPA를 사용하는 회원 리포지토리를 SpringDataJpaMemberRepository라는 이름으로 생성 및 작성합니다. package hello.hellospring.repository; import hel.. 2022. 11. 1. [Springboot] 스프링부트 기초 (14) JPA 적용하기 JPA H2 데이터베이스 저번에는 JDBCTemplate이라는 것을 이용해서 기존 JDBC의 코드를 간결하게 만들었습니다. 그러나 SQL은 직접 작성했어야 했었습니다. 이제 JPA라는 것을 이용해 SQL도 자동으로 만들어지는 부분에 대해서 알아보겠습니다. JPA를 적용해보자 일단 JPA에 대해 간단히 요약하자면 아래와 같습니다. JPA는 기존의 반복 코드는 물론이고, 기본적인 SQL도 JPA가 직접 만들어서 실행해줍니다. JPA를 사용하면, SQL과 데이터 중심의 설계에서 객체 중심의 설계로 패러다임을 전환을 할 수 있습니다. JPA를 사용하면 개발 생산성을 크게 높일 수 있습니다. 1. build.gradle 파일에 JPA, h2 데이터베이스 관련 라이브러리를 추가합니다. dependencies { implementation .. 2022. 10. 31. [Springboot] 스프링부트 기초 (13) JDBC 스프링 컨테이너와 DB연동해서 통합테스트 하기 JDBC Template 저번에는 실제 H2라는 데이터베이스를 설치하고, JDBC API를 이용해 직접 입력한 정보들을 새로 설치한 데이터베이스에 저장하고 조회하는 것까지 했었던 것 기억하시나요?? 그러면 만들었던 부분들이 잘 동작하는지 확인하는 작업이 필요하겠죠?? 그래서 이번에는 스프링 컨테이너와 DB까지 연결한 통합테스트를 진행해보도록 하겠습니다. 스프링 부트 기초, 스프링 컨테이너와 DB 연동해서 통합 테스트해보기 1. 이번 테스트는 기존에 작성했던 MemberServiceTest를 이용해서 해보겠습니다. MemberServiceTest를 복사 후 test/service 경로에 MemberServiceIntegrationTest라는 이름으로 생성하고, 코드를 아래와 같이 작성합니다. package hello.hellosp.. 2022. 10. 27. [Springboot] 스프링부트 기초 (12) JDBC로 H2 데이터베이스와 연동하기 이번에는 이제 메모리 객체에 저장하지 않고, JDBC를 사용해 진짜 어플리케이션과 DB를 연동해서 직접 DB에 저장하는 방법을 알아보겠습니다. 스프링 DB 접근 기술에 대해 알아보자 순수 JDBC 일단 시작하기 전에 관련 설정을 하고 넘어가도록 하겠습니다. 1. build.gradle 파일에 jdbc, h2 데이터베이스 관련 라이브러리 관련 코드를 dependencies에 추가합니다. implementation 'org.springframework.boot:spring-boot-starter-jdbc' runtimeOnly 'com.h2database:h2' 2. 그리고 스프링 부트 데이터베이스 연결 설정을 application.properties에 추가합니다. spring.datasource.url=j.. 2022. 10. 26. [Springboot] 스프링부트 기초 (11) H2 데이터베이스 설치하기 스프링 DB 접근 기술에 대해 알아보자 H2 데이터베이스 설치하기 1. 아래 링크로 이동합니다. https://www.h2database.com/html/download-archive.html 1.4.200 버전을 찾고, 해당 링크를 눌러 알집 파일을 다운로드합니다. (mac은 All Platforms를 다운로드하면 됩니다) 2. 다운 받은 압축 파일을 원하는 경로에 풀어주고, 터미널을 실행합니다. 3. 터미널로 압축을 푼 폴더의 bin 폴더로 이동 후, 아래와 같이 순차적으로 입력합니다. (1) 권한 설정 : chmod 755 h2.sh => (mac만 해당, window는 안 해도 됩니다) (2) 실행 : ./h2.sh (window -> h2.bat) (3) 그러면 아래와 같은 새로운 브라우저가 하.. 2022. 10. 25. 이전 1 2 3 다음 반응형