XML로 설정되어 있던 spring web application context를 Java Config 로 변환하는 과정에 오류가 발생하였다. java.lang.IllegalStateException: No thread-bound request found: Are you referring to request attributes outside of an actual web request, or processing a request outside of the originally receiving thread? If you are actually operating within a web request and still receive this message, your code is probably running ..
앞서 설명한 Chunk 방식을 사용하지 않는 경우 Tasklet 방식의 Batch를 사용한다고 했었다. 두 방식 모두 많이 쓰이는데 장단이 있다. 생각나는대로 말해보면 Chunk 방식은 포맷이 딱 정해져 있어서 그에 맞게 코드를 작성해야 하지만 성능적으로 우수하고, Tasklet 방식은 정해진 형식이 없고 자유롭게 코드를 작성할수 있고 쉽지만 Spring Batch에서 제공하는 다양한 기능들을 활용하지는 못한다. Spring Batch에 대한 이해도가 낮거나 외부 연동작업이라던지 성능이 크게 중요하지 않은 배치 작업을 할때는 Tasklet 방식을 많이 사용하는데 이에 대해 알아보자. 그럼 tasklet 방식의 배치는 어떤게 구현을 해야 하는지 살펴보자. (xml config 로 진행한다.) 사용한 spr..
spring에서 mysql datasource를 설정하는 방법이다. pom.xml 에서 mysql 연동을 위한 driver를 가지고 온다. mysql mysql-connector-java 8.0.20 applicationContext에서 datasource 설정을 다음과 같이 한다. (xml config version) url 에서 ip, port, dbname을, username, password를 해당 db의 정보에 맞게 수정해 주면 된다. url 뒤에 옵션으로 붙은 useSSL, serverTimezone, useUnicode, characterEncoding 등은 일반적은 프로젝트에서 사용되는 옵션이다. timezone과 encoding 등의 이슈를 잡아준다. 끝!