스프링&스프링부트

AOP(Aspect-Oriented Programming, 관점 지향 프로그래밍)는 개발자가 횡단 관심사를 모듈화하고 주요 비즈니스 로직에서 분리할 수 있게 하는 강력한 프로그래밍 패러다임입니다. 여기서 AOP의 기본 개념, 스프링 프레임워크에서의 구현 방법, 그리고 이점을 잘 보여주는 실용적인 예제를 통해 AOP를 살펴볼 것입니다. AOP란 무엇인가? AOP는 객체 지향 프로그래밍(OOP)을 보완하여 로깅, 보안, 트랜잭션 관리 등과 같은 횡단 관심사를 주 비즈니스 로직으로부터 분리할 수 있게 해줍니다. AOP는 이러한 관심사를 별도의 모듈인 "Aspect"로 캡슐화하여 코드의 장황함을 줄이고 유지보수성을 높이는 데 도움을 줍니다. AOP의 핵심 개념 Aspect(관점): 횡단 관심사를 캡슐화한 모듈 ..
yml나 properties에 데이터베이스 접속정보, JWT 토큰 비밀번호를 기입 해놓을 것 이다 로컬에서는 상관없겠지만 github에 올려서 사용 시에 유출되면 악의적으로 사용이 가능해진다. 저런 취약한 정보들만 찾아다니는 봇도 있다. 이것을 jasypt라는 것으로 암호화하여 방지해보도록하자 전체흐름은 아래와 같다 key라는 녀석을 이용해서 암호화를 진행한다. -> 인텔리제이 VM options에 key를 추가하고 사용하면 된다. -> 부연설명을 하자면 1. key값에 자신이 정한 key값을 넣고, 오라클 비밀번호를 str에 넣는다 2. 암호화된 문자열을 긁어서 넣어준다 -> yml파일 -> password: ENC(암호화된비밀번호) 3. ENC() 로 감싸면 jasypt가 자동으로 매핑하여 복호화한다..
스프링 메세지 컨버터 관련 내용을 구글링 한 적 있었는데, 유명강사님 강의내용을 정리한 것 같은 똑같은 내용의 글들이였다. 강의를 보지는 않았지만 유입물의 내용이 좋았다. 하지만 분명히 더 궁금한 내용들이 있을텐데, 강의내용만 정리 되어있고, 내부적으로는 어떻게 동작하는지 설명이 별로 없어서 뜯어보았다 1. 메세지 컨버터란 무엇일까 예를들어 한국인과 일본인이 서로의 본토 언어로 대화 하려고 하면 대화가 안되겠죠 자바객체와 C++객체에도 마찬가지 일겁니다. 무언의 공통어인 영어로 중간에서 번역해준다면 대화가 통할겁니다. 번역하는 과정은 직렬화 역직렬화개념이라고 볼 수 있습니다. 이 무언의 공통어가 요즘 웹에서 JSON 입니다 예시에서 영어가 JSON이라고 보시면 됩니다 메세지 컨버터란 자바 객체를 JSON..
스프링 벨리데이션 어노테이션중 NotNull, NotEmpty, NotBlank 3가지의 차이점을 간단하게 알아보려고 합니다.우선 결론은 아래와 같습니다만 검증을 위해 예제를 만들어봅시다. NotNull - null만 사용불가NotEmpty - null, "" 사용불가NotBlank - null, "", " " 사용불가제약 조건null빈 문자열("")공백 문자열(" ")NotNull사용 불가허용허용NotEmpty사용 불가사용 불가허용NotBlank사용 불가사용 불가사용 불가 셋팅1. spring validation 의존성 추가implementation 'org.springframework.boot:spring-boot-starter-validation' 2. dto 추가// main/java/com/ex..
devcomet
'스프링&스프링부트' 카테고리의 글 목록