본문 바로가기

JAVA/SPRING4

Asynchronous, Multi-thread 개발하기 Asynchronous, Multi-thread 개발하기스프링 프로젝트에서 Asynchronous를 사용하기 위해 AsyncConfigurer를 사용하고ThreadPoolTaskExecutor를 사용해서 Executor를 다중생성하고 ExceptionHandler를 연결합니다.또한 이러한 @Async 어노테이션을 활용하면 여러 Thread를 생성하고 필요한 Executor와 연결하여 사용할 수 있습니다. 그 전에 쓰레드에 대한 예를 한번 생각해보면 좋을 것 같습니다. 쓰레드가 생성될 때 컴퓨터 내부적으로 운영체제(OS)가 요청을 받아들여 메모리공간을 확보해주고 그 메모리를 쓰레드에게 할당해줍니다. 쓰레드는 동일한 메모리영역에서 생성되고 관리되지만, 생성/수거에 드는 비용을 무시할 수는 없습니다. 그래서 .. 2018. 6. 4.
[Spring] ExpirationDate 만료일 설정하기 ExpirationDate프로젝트 중에 ExpriationDate를 이용하여 기존 프로덕션의 기한을 주는 인터페이스를 사용하여 포스팅 해보려고 합니다. 우선 Component 를 만듭니다. 커스텀 어노테이션을 만드는데요. 123456789101112131415package 경로; import static java.lang.annotation.RetentionPolicy.RUNTIME; import java.lang.annotation.ElementType;import java.lang.annotation.Retention;import java.lang.annotation.Target; @Target(ElementType.METHOD)@Retention(RUNTIME) public @interface Ex.. 2018. 5. 2.
[Spring] Restful을 위한 @ResponseBody 와 @RestController Restful한 스프링Spring에서 restful하게 작성하기 위해 @Controller 내에 @ResponseBody를 사용하거나 @RestController를 사용할 수 있다고 합니다. 일반적인 SPRING MVC의 흐름에 대해서 알아봅시다. 1. DispatcherSevlet이 요청을 수신2. DispatcherSevlet은 HandlerMapping에 어느 컨트롤러를 사용할지 문의합니다.3. DispatcherSevlet은 요청을 컨트롤러에게 전송하고 컨트롤러는 요청을 처리한 후 결과를 리턴합니다. ModelAndView를 생성하여 DispatcherSevlet에 리턴합니다.4. ModelAndView를 바탕으로 ViewResolver에게 View를 요청하고5. 최종적으로 View로 화면을 보게.. 2018. 4. 25.
[Spring]Spring Boot + Tiles 1.Tiles란? 웹 페이지 상단이나 하단, 메뉴와 같은 반복적으로 사용되는 부분들에 대한 정보를 한 곳에 모아둔 프레임워크라고 합니다.화면을 구성하는데 있어서 하나의 파일이 아닌 여러부분을 따로 작업해서 하나로 묶어 화면에 보여주는 것이라고 표현하기도 합니다. 인클루드의 확장적 개념이라고 보면 더 이해가 쉬울 것 같습니다.jsp include와 차이를 말한다면 jsp는 페이지 내에 동일한 레이아웃의 정보가 들어갑니다.따라서, 전체적인 레이아웃을 변경하게 될 경우 모든 페이지를 수정해야합니다.예를 들어, include는 include 파일 명이 바뀌면 모든 파일을 열어 include 파일명을 수정해주어야 합니다.하지만 tiles는 보다 간편하게 설정파일로써 대응 할 수 있습니다. * 기본 용어Templa.. 2018. 4. 10.