본문 바로가기

SpringBoot24

[springboot] 8. 트랜잭션 적용하기 * Transaction 사용하기 - 스프링에서 트랜잭션은 xml 설정과 어노테이션을 이용하는 방식 그리고 AOP를 이용하는 방식 - 트랜잭션은 ACID 속성. 원자성/Rollback - 스프링에서 코드기반 트랜잭션과 선언적 트랜잭션 처리를 지원 선언적 트랜잭션 처리는 설정파일이나 어노테이션을 이용해서 트랜잭션을 처리하는 것을 의미 * 방법1] @Transaction 어노테이션을 이용해 트랜잭션 설정 1. /board/src/main/java/board/configuration/DatabaseConfiguration.java - @EnableTransactionManagement //스프링에서 제공하는 어노테이션 기반 트랜잭션을 활성화 package board.configuration; import ja.. 2023. 4. 24.
[springboot] 7. AOP 사용하기 * AOP 란 - AOP 공통기능( 로그, 권한체크, 인증, 예외처리, 트랜잭션) - AOP는 비지니스로직을 구현한 코드에서 직접 호출하지 않고 AOP를 적용하면 컴파일하거나 컴파일된 클래스를 로딩하는 시점에 AOP가 적용된다. * AOP 용어 관점(Aspect) 공통적으로 적용될 기능을 의미, 횡단 관심사의 기능이라 할수 있으며 한개 이상의 포인트컷과 어드바이스의 조합으로 만들어짐 어드바이스(Advice) 관점의 구현체로 조인포인트에 삽입되어 동작하는 것을 의미함. 스프링에서 사용하는 어드바이스는 동작하는 시점에 따라 다섯 종류로 구분됨 조인포인트(Joinpoint) 어드바이스를 적용하는 지점을 의미. 스프링에서 조인포인트는 항상 메소드 실행 단계만 가능함 포인트컷(Pointcut) 어드바이스를 적용할.. 2023. 4. 23.
[springboot] 6. HandlerInterceptor(인터셉터) 사용하기 * HandlerInterceptor(인터셉터) 사용하기 - 스프링의 인터셉터는 URI 호출시 해당 요청의 컨트롤러가 처리 되기 전,후에 작업을 하기 위해 사용됨 - 필터와 인터셉터의 차이점 1) 필터는 dispatchServlet 앞단에서 동작 인터셉터는 dispatchServlet에서 핸들러 컨트롤러로 가기전에 동작 2) 필터는 J@EE 표준스펙의 서블릿 기능 인터셉터는 스프링에서 제공되는 기능으로 필터와 달리 인터셉터에서는 스프링 빈 사용가능 3) 필터는 문자열 인코딩같은 웹전반에서 사용기능 구현 인터셉터는 로그인,인증,권한 같이 클라이언트 요청과 관련 있는 기능 구현 1. HandlerInterceptorAdapter or HandlerInterceptor 로 인터셉터 구현하기 - 스프링에서 인터.. 2023. 4. 23.
[springboot] 5-1. Log4JDBC로 쿼리 로그 정렬하기 * Log4JDBC로 쿼리 로그 정렬하기 - 예전에 사용되던 log4jdbc-remix lib는 개발이 종료 되었다고 한다. 후속버전으로 Log4jdbc-log4j2가 개발됨 1. lib 추가 board\build.gradle - implementation 'org.bgee.log4jdbc-log4j2:log4jdbc-log4j2-jdbc4.1:1.16' 추가해준다 group: org.bgee.log4jdbc-log4j2 name: log4jdbc-log4j2-jdbc4.1 version: 1.16 repositories { mavenCentral() } dependencies { implementation 'org.springframework.boot:spring-boot-starter-data-jpa.. 2023. 4. 23.