프로그래밍/Spring (4) 썸네일형 리스트형 HikariCP 커넥션 지연 이슈 오라클 버전업 11g -> 19c 이후 HikariCP 커넥션 30초 지연이슈가 발생함 구글링을 통하여 urandom 변경 등 시도해봤지만 해결되지 않음 사용중이던 ojdbc8 버전이 19.3.0.0 이었는데 19.6.0.0 또는 그이상으로 변경시 해결됨 개발기도 환경은 동일한데 왜 운영기에서만 발생한건지는 확인하지 못함 * 실제 미들웨어나 서버 설정에 따라 pom.xml 등 디펜던시에 명시된 라이브러리가 사용되지 않을수 있음 예로 jeus에 기본적으로 별도 라이브러리 관리를 하고 해당 라이브러리를 참조해서 사용 [Spring] 동작 원리 Spring 동작 원리는 아래 그림과 같다. 1. DispatcherServlet : 최초 요청을 받는 역할 2. HandlerMapping : 해당 요청을 처리할 Controller를 찾는 역할 3. Controller : 비즈니스 로직을 처리(Service -> Repositoy -> Database)하고 뷰 정보를 담아서 리턴 4. ViewResolver : 실제 뷰를 찾는 역할 5. View : 화면 표시 처리 - 참고 : https://starkying.tistory.com/entry/Spring-MVC-%EB%8F%99%EC%9E%91%EC%9B%90%EB%A6%AC-%EA%B5%AC%EC%84%B1%EC%9A%94%EC%86%8C [Spring] Transaction marked as rollbackOnly 스프링의 선언적 트랜잭션(@Transactional) 내부 메소드 내에서 예외를 잡아서 처리하는데 커밋될거라는 예상과 달리 Transaction marked as rollbackOnly 예외가 발생하면서 롤백되는 현상이 있었습니다. 상황 코드 @Service @Transactional public class AService { @Autowired private BService bService; public void test() { try { bService.runtimeExceptionTest(); } catch (RuntimeException re) { log.warn("BService RuntimeException", re.getMessage()); } } } @Service @Transactiona.. [Spring] lombok @Slf4j 사용하기 오늘은 lombok @Slf4j를 사용하여 Logger 생성없이 편리하게 log를 찍을 수 있는 방법을 작성해봅니다. 스프링 부트에서 기본적으로 로깅 라이브러리를 디펜던시 하기 때문에 로그를 쉽게 사용할 수 있습니다. 보통 로그를 찍기 위해서 아래와 같이 Logger를 클래스 마다 생성했습니다. private static final Logger log = LoggerFactory.getLogger(Hello.class); 위 과정을 간단하게 해주기 위해서 lombok을 사용한다면 @Slf4j 어노테이션만 붙여서 바로 log를 사용할 수 있습니다. @Slf4j public class Hello { log.debug("로그 테스트"); } 참고자료 - https://inseok9068.github.io/ja.. 이전 1 다음