김영한님 인프런 강의 - 스프링 입문
- 프로젝트 환경설정
- 프로젝트 생성
- 라이브러리 살펴보기
- View 환경설정
- 빌드하고 실행
- 스프링 웹 개발 기초
-
정적 컨텐츠
-
MVC와 템플릿 엔진
-
API
- 객체를 반환하는것을 API방식
- 기본은 JSON으로 반환
- @ResponseBody 를 사용
- HTTP의 BODY에 문자 내용을 직접 반환 viewResolver 대신에 HttpMessageConverter 가 동작
- 기본 문자처리: StringHttpMessageConverter
- 기본 객체처리: MappingJackson2HttpMessageConverter
- byte 처리 등등 기타 여러 HttpMessageConverter가 기본으로 등록되어 있음
-
회원관리 예제 - 백엔드 개발
- 비즈니스 요구사항 정리
- 회원 도메인과 리포지토리 만들기
- 회원 리포지토리 테스트 케이스 작성
- 회원 서비스 개발
- 회원 서비스 테스트
-
2.2021 11월 23일
-
스프링 빈과 의존관계
- 스프링 빈을 등록하는 2가지 방법
- 1.컴포넌트 스캔방식
- 2.자바 코드로 직접 스프링 빈 등록하기
- 컴포넌트 스캔과 자동 의존관계 설정
- @Component 에노테이션이 있으면 스프링 빈으로 자동 등록
- @Controller 컨트롤러가 스프링 빈으로 자동 등록된 이유도 Component 스캔 때문
- 자바 코드로 직접 스프링 빈 등록하기
- 기본적으로 동일선상의 패키지나 상위 패키지의 스프링빈은 Component가 스캔하지 않는다.
- 스프링 빈을 등록하는 2가지 방법
-
회원 관리 예제 - 웹 MVC개발
- 회원 웹 기능 - 홈 화면 추가
- 회원 웹 기능 - 등록
- 회원 웹 기능 - 조회
-
스프링 DB 접근 기술
- H2 데이터베이스 설치
- 순수 Jdbc
- 스프링 통합 테스트
- 스프링 JdbcTemplate
- JPA
- JPA는 기존의 반복 코드는 물론이고, 기본적인 SQL도 JPA가 직접 만들어서 실행해 준다.
- JPA를 사용하면, SQL과 데이터 중심의 설계에서 객체 중심의 설계로 패러다임을 전환을 할 수 있다.
- JPA를 사용하면 개발 생산성을 크게 높일 수 있다.
- 스프링 데이터 JPA -AOP
- AOP가 필요한 상황
- 모든 메소드의 호출 시간을 측정
- 공통 관심 사항(cross-cutting concern) vs 핵심 관심 사항(core concern) 회원 가입 시간, 회원 조회 시간을 측정
- AOP적용