본문 바로가기

Java/spring19

신세계(Advice, @Order, var, MSA첫경험..!) 어제부터 첫회사에 출근하게 되었다!회사분들이 내 블로그를 잘 봤다고 하셨다..너무 부끄럽다.. 집에서 거리가 좀 있어서 매일 6시에 일어나서 출근해야한다.. 회사에서 프로젝트의 구조를 간단하게 설명을 들었다..솔직히 너무 처음보는 구조라 이해가 정말 힘들어서 아..공부를 죽어라 해야겠구나 싶었다.오늘은 이사님께서 짜신 유저쪽 코드를 보면서 처음보는것들을 찾아보면서 정리해보았다. ㅇ Adviceadvice라는 디렉토리가 따로 존재하길래 한번 보니 예외처리에관한 코드들이 있었다.찾아보니 보통 Spring MVC에서 예외 처리, 응답 데이터 가공, 또는 공통적인 로직을 처리하기 위한 클래스들을 모아 놓은 패키지로 사용된다고 한다. 여기에 해당하는 클래스들은 주로 @ControllerAdvice, @RestCo.. 2024. 9. 3.
JWT를 가장 쉽게 적용해보자. 1. 나는 gradle기준이다. 고로 build.gradle에 의존성 추가를 해주자. implementation 'io.jsonwebtoken:jjwt-api:0.11.2' implementation 'io.jsonwebtoken:jjwt-impl:0.11.2' implementation 'io.jsonwebtoken:jjwt-jackson:0.11.2' 첫줄부터 역할을 간략히 보자.implementation 'io.jsonwebtoken:jjwt-api:0.11.2'JWT를 생성, 서명, 인코딩, 파싱하는 기능을 제공함. implementation 'io.jsonwebtoken:jjwt-impl:0.11.2'위의 기능들의 실제 구현을 제공함.(서명 알고리즘, JWT토큰의 인코딩/디코딩,.. 2024. 6. 28.
QueryDsl에 대해 알아보자. 오랜만에 포스팅이다. 그간 취업이안돼서 방황도해보고 자격증공부도 해보고 혼자 웹페이지 프로젝트도 해보고 그런시간을 보냈다.요즘 다시 열정이 돌아와 열심히 취업을 준비중이다.전에 편하게 쓰던 Jpa를 보다가 jpa n+1 문제에 대한 해법으로 QueryDsl 에 대해 알게 되었고, 동영상 강의가 있길래 한번 정리해본다.QueryDSL은 간단하게 설명하자면 자바 기반의 데이터베이스 쿼리 언어로, 타입안전한 방식으로 쿼리를 작성할 수 있게 도와주는 기술이다. 기존의 JPQL이나 SQL같은 문자열 기반 쿼리 언어의단점을 보완하기 위해 설계되었다. 장점으로는 컴파일 시에 쿼리 오류를 잡을 수 있어 더 안전하고 유지보수가 쉬워진다는 점이있다.먼저 QueryDsl을 쓰기위해 build.gradle에 이렇게 의존성을 .. 2024. 5. 27.
spring security를 알아보자 - 12 ㅇ JSON Web Token 기반 인증 인증방법으로 세션과 토큰의 차이는 이미 포스팅해놓은게 있으니 패스. 그리고 JWT를 적용해서 어플을만든 경험도 있기에 간단하게 짚고 넘어가보겠다. ㅇ 토큰? 토큰은 클라이언트 애플리케이션에서 백엔드 시스템으로 보호된자료에 접근할때마다 보낼 수 있도록 설정되어있다. 토큰이 유효하다면 백엔드 서버는 올바른 응답을 해줄 수 있다. ㅇ 토큰을 사용함으로써 얻는 장점 자격증명이 되면 실제 자격증명을 공유하지 않고도 토큰을 주고받는것으로도 클라이언트와 백엔드 서버가 작업할 수 있게된다. 또한 백엔드 애플리케이션도 인증을 반복해서 하지 않아도 된다. 그리고 토큰을 사용하여 엔드 유저의 유저정보 혹은 역할정보를 저장할 수 있다. Spring Security 에서 기본으로 만드는.. 2024. 4. 19.