JPA 프로그래밍 학습 정리 (8) - 웹 어플리케이션 제작(1)
웹 어플리케이션 만들기 진행 순서
- 프로젝트 환경 설정
- 도메인 모델과 테이블 설계
- 애플리케이션 기능 구현
사용할 기술
- 뷰 : JSP, JSTL
- 웹 계층 : 스프링 MVC
- 데이터 저장 계층 : JPA, Hibernate
- 기반 프레임워크 : 스프링 프레임워크 ( https://spring.io/ )
- 빌드 : Maven
천천히 살펴보자
프로젝트 환경설정
- 프로젝트 구조 분석
- 메이븐과 라이브러리 설정
- 스프링 프레임워크 설정
프로젝트 구조
프로젝트 루트 파일 하위에
소스폴더 / 빌드결과 / 메이븐 설정파일이 있다.
pom.xml
메이븐 설정 파일에서 프로젝트 정보와 사용할 라이브러리를 지정한다. <dependencies>를 통해 라이브러리를 설정한다
- 스프링 MVC : 스프링 MVC 라이브러리
- 스프링 ORM : 스프링 프레임워크와 JPA를 연동하기 위한 라이브러리
- JPA, 하이버네이트 : JPA 표준과 하이버네이트를 포함하는 라이브러리
- H2 데이터 베이스
- 커넥션 풀 : tomcat-jdbc 커넥션 풀을 사용
- WEB : 서블릿, JSP와 관련된 라이브러리
- 로깅 SLF4J & LogBack 등
스프링 프레임 워크 설정
web.xml : 웹 애플리케이션 환경설정 파일
웹 애플리케이션에서 스프링 프레임워크를 구동하기 위한 설정이 대부분
appConfig.xml, WebAppconfig.xml 을 설정한다.
appConfig.xml : 스프링 애플리케이션 관련 설정
비즈니스 로직, 도메인 계층, 서비스 계층, 데이터 계층을 담당
@Transactional 어노테이션 기반의 트랜잭션 관리자를 활성화한다. 어노테이션을 사용하면 트랜잭션을 적용한다.
H2 데이터베이스 접근할 데이터 소스를 등록한다.
트랜잭션 관리자를 등록한다.
JPA를 사용하려면 JpaTransactionManager를 트랜잭션 관리자로 등록해야 한다. JdbcTemplate, MyBatis도 사용할 수 있다.
@Repository 어노테이션이 붙어 있는 스프링 빈에 예외 변환 AOP를 적용한다. JPA예외를 스프링 프레임워크가 추상화한 예외로 변환해준다.
webAppConfig.xml : 스프링 웹 관련 설정
스프링 MVC 설정을 포함해서 웹 계층을 담당
여기까지가 환경설정 끝!!
https://taehoon9393.tistory.com/373
JPA 프로그래밍 학습 정리 (8) - 웹 어플리케이션 제작(2)
https://taehoon9393.tistory.com/372 JPA 프로그래밍 학습 정리 (8) - 웹 어플리케이션 제작(1) 웹 어플리케이션 만들기 진행 순서 프로젝트 환경 설정 도메인 모델과 테이블 설계 애플리케이션 기능 구현 사
taehoon9393.tistory.com