Spring Framework에서 AOP(Aspect-Oriented Programming)는 강력한 트랜잭션 관리 기능을 제공합니다. 이 기능은 다양한 애플리케이션에서 트랜잭션을 효율적으로 관리할 수 있게 해주지만, 때때로 예상치 못한 문제가 발생하기도 합니다. 이 글에서는 Spring Data JPA를 사용하면서 자주 마주치는 self-invocation 문제와 그 배경에 대해 설명하고, Spring의 AOP가 어떻게 트랜잭션 관리에 적용되는지 구체적으로 살펴보겠습니다. AOP와 트랜잭션 관리란? Spring Framework에서 AOP(Aspect-Oriented Programming)는 다양한 곳에서 사용되는 로직을 한 곳에 모아 관리할 수 있게 해주는 프로그래밍 기법입니다. 예를 들어, 보안, ..
시작 이 대화에는 3가지 정도 잘못된 내용이 있다. 강의를 듣고 나중에 정답을 알려줌! 최초의 OS로는 Unix가 있었다. (유료) 리누스 토르발즈가 커널을 재배포해서 Linux를 만들었다. 리눅스 배포판을 다시 한번 수정? 해서 나온게 Debian 계열(무료)과 RedHat 계열(유료)이 있다. Debian 계열에서 편의기능을 추가한게 지금까지도 계속 발전되고 있는 Ubuntu 이다. Redhat 에서 리눅스 배포판이 만들어지는 순서 1. 페도라 리눅스 (새로운 기능을 개발하는 버전) 무료이다. 2. 기능이 안정화되면 RHEL 로 바꿔서 릴리즈. 유료이다. 3. RHEL 을 복사해서 만든게 centOS 배포판이다. centOS는 곧 지원 종료된다. RHEL은 IBM에게 인수가 되었다. 기존 centOS..
에러 SPF 상태 pass DMARC 상태 none DKIM 상태 none 거부 이유: Unknown error: transient error (421): 4.7.0 [104.30.8.83 19] Gmail has detected that this message is4.7.0 suspicious due to the very low reputation of the sending domain. To4.7.0 best protect our users from spam, the message has been blocked. For4.7.0 more information, go to4.7.0 https://support.google.com/mail/answer/188131 h3-20020a654043000000b..
회사 근처 도서관에서 책 빌리고 주말을 이용해서 다 읽었다. 이 책은 대상독자가 초급을 조금 지난 초중급을 대상으로 하고 있으며 개발자로 취업을 준비하는 사람, 이제 막 회사에 입사한 신입 개발자 그리고 어느 정도 개발 경험이 있는 주니어 개발자를 대상으로 한다. 책은 크게 1부와 2부 3부로 나뉘어져있다. 1부는 학교에서 배운 이론을 실무에 적용하기. 여기서 나도 몇 개 알고 있는 내용을 제외하고는 재미있게 읽었다. 데이터를 지키는 암호화 기법에서 대칭키와 비대칭키의 대해서 설명이 좋았다. 국비지원을 다닌다고 하면 현실적으로 SI회사로 취업할 가능성이 높은데 실제 SI 실무에서 겪을 법한 시큐어 코딩 부분에 대한 설명이 있어서 유익했다. 또한 개발을 하다 보면 라이선스에 관한 이야기를 빼놓을 수가 없는..
에러스택 Resolved [org.springframework.http.converter.HttpMessageNotWritableException: No converter for [class com.example.demo.controller.ResourceController$$Lambda$821/0x000000011a429db0] with preset Content-Type 'application/octet-stream'] 환경 spring boot 2.4.x 외부 파일을 다운로드 하는 Controller에서 에러 발생 문제가 된 코드 @RestController public class ResourceController { @GetMapping("/resource") public ResponseEntit..
sdkman java 설치하려는데 다운로드는 되는데 풀지를 못한다. [root@localhost ~]# sdk install java 8.0.382-zulu Downloading: java 8.0.382-zulu In progress... ########################################################################################################################################################################################### 100.0% Download has failed, aborting! .sdkman 밑에 tmp에 다운로드가 된다는걸 알고 해당 shell..
버전: 9.3 [root@localhost ~]# dnf update Rocky Linux 9 - BaseOS 2.0 MB/s | 2.2 MB 00:01 Rocky Linux 9 - AppStream 6.3 MB/s | 7.4 MB 00:01 Rocky Linux 9 - Extras 14 kB/s | 14 kB 00:00 Dependencies resolved. ============================================================================================================================================================================================== Pac..
책 24단계 실습으로 정복하는 쿠버네티스의 저자(이정훈 저) 분이 제니퍼 소프트와 함께 매 주 EKS 교육 관련된 내용을 연재한다고한다. 책도 한번 사서 읽어야겠다. 참고 책 저자 블로그 https://jerryljh.tistory.com/ 매일 쓰고 달립니다. 문의는 erdia22@gmail.com으로 부탁드립니다. jerryljh.tistory.com https://jennifersoft.com/ko/blog/tech/kubernetes-tech-note-intro/ 제니퍼 쿠버네티스 기술노트 1. EKS 블로그 연재 목표 현대 기업의 가장 중요한 문제는 고객의 다양한 요구를 빠르고 안정적으로 제공하는 것입니다. 빠른 대응과 안정적인 운영이라는 양립하기 어려운 문제를 해결해야 합니 jenniferso..
- Total
- Today
- Yesterday
- Mac
- elasticsearch
- Bash tab
- svn
- LocalDate
- Kotlin
- springboot
- 오라클
- Linux
- 프로페셔널 스튜던트
- Spring
- window
- JavaScript
- LocalDateTime
- jQuery
- maven
- mybatis config
- docker
- oracle
- 북리뷰
- intellij
- 베리 심플
- Github Status
- localtime
- input
- Spring Security
- rocky
- Java
- config-location
- mybatis
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |