비즈니스 로직과 상관없지만 해야하는 일들이 있을 때, Spring 프레임워크에서 제공하는 Event를 사용하여 비즈니스 코드와 비즈니스와 관련 없는 코드의 의존을 분리한다. 예를 들어, 비즈니스 특정 행위를 로그 테이블에 적재해야 할 때, 나의 판단에는 비즈니스의 흐름에 로그 테이블에 적재하는 코드를 넣는 것은 비즈니스 흐름을 읽는 데 방해가 된다. 그래서 이벤트를 발생시키고 해당 이벤트의 Listener 객체가 해당 작업을 수행하도록 한다. 참고; https://javacan.tistory.com/entry/Handle-DomainEvent-with-Spring-ApplicationEventPublisher-EventListener-TransactionalEventListener 스프링 Applicat..
최근에는 명령(Command)과 조회(Query) 모델을 분리해서 개발하고 있다. 그래서 JPA로 명령 모델에서 쓰이는 엔티티와 조회 모델에서 쓰는 엔티티를 따로 만든다. 그런데 생성, 삭제, 변경 류의 명령(command) 모델에서 생성된 쿼리들은 간단하고 식별하기 쉽지만, 조회 모델에서 Hibernate가 만든 복잡한 쿼리들은 이게 어떻게 실행된 쿼리인지 식별하기 어렵다. 현재 회사에서는 DBA가 가끔 슬로쿼리를 뽑아서 전달해 주는데, 해당 쿼리가 어디서 실행된 쿼리인지 찾는데 좀 오래걸린 경험이 있다. 그래서 조회용 쿼리에 주석을 붙여서 찾기 쉽게 해보려고 한다. 관련 코드는 아래 깃헙 링크에 있다. 코드는 코틀린으로 작성되어 있다. https://github.com/voyagerwoo/spring..
서론 현재 스프링 부트로 서비스를 개발하고 있다. 그래서 한빛 리더스 마지막 미션 책으로 이 책을 만나게 되어서 너무 반가웠다. 워크북이기 때문에 실용적인 팁들을 주고 있는 책이다. 스프링웹 개발에 대한 경험이 있으신 분이 스프링 부트로 입문하려고 할 때 굉장히 유용한 책이 될 것 같다.스프링을 자체를 모르신다면 최범균님의 스프링4 프로그래밍 입문이라는 책을 추천한다. 두껍고 부담스러운 여타 스프링 책들 보다 훨씬 쉽게 입문할 수 있게 도움을 줄 것이다. 책 간단한 소개 책은 워크북 답게 스프링 부트와 관련 기술들에 대해서 실용적인 방법을 알려준다. 우선은 한번 죽 읽어보는 것을 추천하고 나중에 써먹어야 할 때가 떠오르면 한번 찾아서 자세히 보면 좋을 것 같다.그리고 스프링 부트의 주 개념인 자동 구성 ..
- Total
- Today
- Yesterday
- javascript
- ecma6
- 발리
- 웹을 지탱하는 기술
- 독후감
- 컨테이너
- rest
- hands-on
- container
- 객체지향
- 사누르
- 도커
- Docker
- spring boot
- 회고
- 개발자
- AWS
- 한달살기
- Bali
- AWSKRUG
- springboot
- 실수노트
- ChatGPT
- spring
- sanur
- 웹
- ES6
- S68
- Clean code
- html
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |