Spring
-
Filter / InterCeptor / AOPSpring 2020. 11. 19. 15:30
지난년도에 AOP를 통해서 여러개의 메소드에 대해서 데이터를 수급하기 위하여 개발한적은 있으나 (choigaram.tistory.com/46?category=955254) 공통적으로 전후처리가 가능한 작업들에 대해서 정리할 필요성을 느껴서 작성을 합니다. Filter / Interception / AOP 3가지 다 활용하는 경우가 많은데, 공통적으로 업무에 대해서 프로세스 전/중간/후 에 대해 처리 가능하도록 해줄수있다. 제일 눈에 들어오게 프로세스 흐름도를 그리면 아래와 같다. doFilter -> 1. Web Application에 등록 (Web.xml)하기 때문에 Server Deployment Descriptor에 등록 처리합니다 2. 예외처리 시 error-page 같이 예외 처리 3. Disp..
-
Spring AOPSpring 2019. 5. 10. 18:01
이번에 프로젝트 지원을 나오면서 JCO 이슈나 , 동적인 연동 관련된 이슈들이 나와.... 고민을 조금 해본 결과 AOP를 하면 어떨까 싶어 스타트했다. 진심 제대로 정리된 글을 찾기도 어렵고, 삽질도 많이 해보고, 되게 간단하게 정리 가능한 것 같으면서도 어렵게 되어있어서 작업하면서 삽질했던 방향으로 일단 정리를 해보겠다. ( 추후 언제가 될지 모르지만 추가적으로 Append할 예정 ) 1. AOP란 AOP는 간단하게 말해서 쉽게 이해하려면 제 3자의 입장에서 메소드들을 총괄 하는 매니저 역할을 한다고 이해하고 있다. 무슨뜻이냐. A Method / B Method / C Method 가 각각 있다고 예를 들고 [A Class] public class A { public void a() { //a me..
-
Spring Mybatis Batch ProcessingSpring 2019. 4. 10. 15:32
이번에 Batch 관련 내역을 찾아보는 도중 새로이 알게된 사실에 대해서 작성한다. 대부분 거의 모르고 작성할 것이라고 생각되는데 Mybatis에서 ExecutorType.BATCH 를 실행하게 되면, ExecutorType.BATCH: 이 실행자는 모든 update구문을 배치처리하고 중간에 select 가 실행될 경우 필요하다면 경계를 표시한다. 이러한 과정은 행위를 좀더 이해하기 쉽게 하기 위함이다. 이러한 문구가 자바 API 에 작성되어있는데 이 내용이 어떤 사항이나면. 메소드내에 ( C/R/U/D )가 존재할 경우, 해당 UPDATE 구문을 모두 처리하고 SELECT를 만나게 되면 UPDATE 구문을 flushStatements 처리하는 사항으로 이해하면 쉽게 이해할 수 있다. 해당 사항때문에....
-
cannot change the executor type when there is an existing transactionSpring 2019. 4. 10. 15:06
Spring Mybatis 사용 시 ExecutorType.Simple / ExecutorType.Batch 2개를 주요로 사용하고 있는데, 해당 사용 간 이슈 때문에 발생한 사례이다. 1. 현재 사내에서는 ExecutorType.Batch 를 사용하고 있고, Mapper에서는 foreach에 대한 구문을 일절 사용하지 않고 있다. ( sessionFactory에서 제어하는 batch로 처리하는 형태이기 때문에 그냥 안사용하는 사람이 많다고 한다... 왜그런진 모름 ) 2. @Async Component Method 처리된 내역이 존재하면서 이슈가 발생 [Process] ( A method ) List a = Sqlsession.selsectList(Select Sql); ( B method ) SqlS..
-
Json Date Log를 보기 쉽게 하는법Spring 2017. 6. 12. 14:16
Json log 확인 시 간편하게 보는 법이 존재하여 공유합니다. json data의 경우 log를 찍게되면 필드 별로 쪼개서 표현하는 것이 아니라면 아래와 같은 형식으로 표현되는데 이를 풀어서 표현 {"A","B","C"....} pom.xml org.slf4j slf4j-log4j12 1.6.1 org.codehaus.jackson jackson-mapper-asl 1.9.4 TestSorce import java.awt.Color; import org.codehaus.jackson.map.ObjectMapper; import org.codehaus.jackson.map.SerializationConfig; import org.slf4j.Logger; import org.slf4j.LoggerFact..
-
Spring Boot Banner 처리 하기Spring 2017. 6. 12. 09:47
JPA 관련 프로젝트를 다시 되집어 보는 중 유용한 내역(?)이 존재하는 것 같아 글을 작성합니다. 제가 구현한 JPA 간단한 기본 모듈 프로젝트에서는 스프링 부트를 사용하고있는데. 이때 Spring boot banner. 즉 스프링 부트가 시작할때 나오는 쏼랴쏼랴 하는것있죠? 그걸 바꿔보도록 하려고 합니다. 위 화면을 보면 빨간색 박스로 표기한 부분이 Spring boot banner인데. 이 부분을 자신이 원하는대로 바꿔보도록 하겠습니다. 일단. src/main/resources에 banner.txt 라는 파일을 하나 생성합니다. 생성 완료 후 banner.txt 파일에 자신이 원하는 이름 or 명칭을 기입 후 파일을 저장합니다. 그 이후에 프로젝트를 재시작하면. 자신이 설정한 이름 or 명칭으로 변..