본문 바로가기

[java] spring에서 event 사용하기 들어가기 스프링에서 이벤트 처리하는 방법을 알아보자. 일반적으로 스프링에서 이벤트 처리하는 경우는 많지가 않다. 대부분 빈객체의 메소드를 직접적으로 호출하여 처리한다. 대부분 직관적이고 코드도 명확하기 때문에 많이 사용한다. 이는 스프링 세션을 처리하는 내부에서도 사용되고 있다. 이벤트 처리는 대부분 비동기적으로 처리되어 추적하거나 분석하기 쉽지 않다. 그래도 이벤트 처리로 서로 간에 종속성을 끊어주고, 동기적 처리로 인한 작업 지연이 최소화된다. 이벤트로 처리할 경우에 장점이 많기 때문에 알아두면 좋다. 작성자: http://ospace.tistory.com, (ospace114@empal.com) 기본 이벤트 정의 이벤트 처리하는 로직을 들어가기 전에 기본적인 이벤트 정의를 보자. 스프링에서는 이벤트.. 더보기
[java] spring session 처리해보자 들어가기 HTTP는 기본적으로 상태를 유지하지 않기 때문에 이전에 결과가 다음 작업에 영향을 미치지 않는다. 즉, 이전 결과 데이터를 다음 처리에서 사용할 수 없다는 의미이다. Spring에서는 이를 처리히기 위해서 다양한 방법들이 있다. Spring에서 session관리 기본상태는 브라우저의 cookie를 사용해서 유지하고 있다. Spring는 session 값을 서로 교환함으로서 세션을 식별하고 있다. Spring의 기본 설정에는 cookie를 사용한 session 관리를 사용하지 않는다. 먼저 session를 사용하기 위한 기본 설정을 해보자. 작성자: http://ospace.tistory.com/ (ospace114@empal.com) Interceptor 설정 먼저 HandlerIntercep.. 더보기
[Springboot] Spring boot WebFlux 사용하기 들어가기 Spring WebFlux은 Spring Framework의 모듈로서 비동기와 반응형 프로그래밍을 지원하며 작은 하드웨어 리소스에서 적은 수의 스레드로 동시성을 처리하는 웹 스택이다. 기존 Servlet API는 동기식 I/O형태로 처리되었지만 이를 비동기식으로 구성된 서버(예: Netty)에 의해 새로 구성된 API이다. 비동기 처리로 자원 사용 효율이 좋아졌지만 성능이 좋아진다는 보장이 없다. 다음과 장점이 있다. 비동기 처리에 의한 다중 요청 처리 반응형 프로그래밍으로 데이터 스트림 처리와 이벤트 기반 처리 유용 함수형 라우팅으로 간결하게 코딩 작성 가능 WebFlux에서는 크게 두가지 방식으로 사용할 수 있는데, 하나가 어노테이션을 사용한 방법과 다른 하나는 직접 라우팅 설정을 통한 방법.. 더보기
[spring boot] 다중 DB 사용하기: AbstractionRoutingDataSource 활용 들어가기 AbstractionRoutingDataSource을 사용해서 다중 DB를 구현하는 방식이다. 작성자: ospace114@empal.com, http://ospace.tistory.com/ 설정파일 구성 다중 DB에서 사용할 설정파일에 어떻게 설정값을 할당하는지 살펴보자. 다중 DB에 사용할 application.properties 내용은 아래와 같다. spring.datasource.master.jdbc-url = jdbc:mysql://127.0.0.1:3306/db1?serverTimezone=UTC spring.datasource.master.username = foo spring.datasource.master.pasword = foopass spring.datasource.slave... 더보기
[spring boot] jackson대신에 gson으로 사용하기 들어가기 최근에 참고한 자료에 따르면 gson이 성능이 좋아져서 jackson보다 더 좋아졌다는 글이 있었다. 그래서 한번 spring boot의 json 매퍼를 변경해서 사용해보았다. 작성자: ospace114@empal.com, http://ospace.tistory.com/ 기본 환경 먼저 dependency을 추가하자. spring boot을 사용한다면 version을 사용하지 않아도 자동으로 버전을 잡아준다. 현재 기준(2022.07.06)으로 버전 2.8.8 이하는 vulerability가 있어서 사용을 권장하지 않는다. com.google.code.gson gson 그리고 기존 jackson은 spring-boot-starter-web에서 exclusions에 포함시켜서 제외시켜준다. org.. 더보기

반응형