최근에 Cursor IDE를 본격적으로 써보기 시작했다.사실 처음엔 “얼마나 다를까?” 싶었는데, 직접 경험해 보니 꽤나 긍정적이었다. 이번 글에서는 Cursor 세팅 과정부터, 설치한 플러그인, 써보면서 느낀 장단점을 정리해본다.(프로젝트 사용환경: Spring Boot + Vue) 설치한 플러그인처음 세팅할 때는 아래 플러그인들을 설치했다.기존 IntelliJ나 VS Code 환경에서 쓰던 익숙한 조합이다.ESLint코드 스타일을 자동 검사해 일관성 유지Extension Pack for Java Auto ConfigJava 개발 환경 자동 세팅 (자바 지원 플러그인 모음집)IntelliJ IDEA Keybindings익숙한 IntelliJ 단축키 그대로 사용 가능Material Icon Theme프..
BE/Spring
환경) H2 DB 1. INSERT(UPDATE)update(query, ...) 를 사용하는 경우 추가된 행의 갯수를 반환받을 수 있다.@Overridepublic int insert(ReviewDto dto) { int result = jdbcTemplate.update( "INSERT INTO REVIEWS (SEQ, USER_SEQ, PRODUCT_SEQ, CONTENT, CREATE_AT) VALUES (null, ?, ?, ?, null)", dto.getUserSeq(), dto.getProductId(), dto.getContent() ); return result;} 2. SELECT쿼리를 통해 얻은 데이터 결과값을 dto, vo..
안녕하세요. 이번 포스팅에서는 Spring Security에서 JSON 형식으로 로그인하는 방법에 대해서 알아보겠습니다. 아래의 내용에서 자신의 개발 방향에 맞게 커스텀하시면 될 듯 합니다. 1. UsernamePasswordAuthenticationFilter 살펴보기 로그인 요청이 들어오면, 인증 필터를 거쳐 UsernamePasswordAuthenticationFilter에서 ID와 PW를 처리합니다. - SPRING_SECURITY_FORM_UESRNAME_KEY, SPRING_SECURITY_FORM_PASSWORD_KEY : username과 password 인자 값 설정 - DEFAULT_ANT_PATH_REQUEST_MATCHER : 로그인 요청 URL 설정 위의 소스는 UsernamePa..
Spring의 Interceptor에서 로그인 세션이 없는 경우, return false를 하게 구현하였다. 이 구조에서, 추가로 react를 붙여서 같이 Interceptor를 사용하였다. 아래 소스처럼 response에 데이터를 writer를 이용해서 넣어주면 return false를 해도 response를 넘겨줄 수 있다. public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception{ if( sessionDto == null ) { /**** 어느 플랫폼에서 요청이 왔는 지 확인 ****/ String type = StringUtility.procNull..
안녕하세요. 이번 포스팅에서는 개인 프로젝트를 진행하면서 React와 Spring Security를 적용시킨 방법에 대해서 포스팅하겠습니다. 개인 프로젝트이고, 공부하고 있다보니 참고용으로 봐주시면 감사하겠습니다. (소스는 맨 아래에 있습니다.) 참고로, 필자는 username, password가 아닌 userId와 userPassword로 파라미터를 받도록 하였습니다. 1. 로그인 시, JSON 요청으로 로그인하는 방법(JSON 응답 포함) https://ajdahrdl.tistory.com/260?category=1007900 [Spring Security] JSON으로 로그인 및 응답하기 안녕하세요. 이번 포스팅에서는 Spring Security에서 JSON 형식으로 로그인하는 방법에 대해서 알아보..
이 포스팅은 아래의 강의를 참고하였으니 여기에서 공부하시는 것을 추천드립니다. https://inf.run/tcLk [무료] 스프링부트 시큐리티 & JWT 강의 - 인프런 | 강의 스프링부트 시큐리티에 대한 개념이 잡힙니다., - 강의 소개 | 인프런... www.inflearn.com 1. JWT 임시 토큰을 만들어서 기본 흐름 확인하기 1) 컨트롤러에서 권한 테스트 할 함수 만들기 // user,manager,admin 권한만 접근 가능 @GetMapping("/api/v1/user") public String user(Authentication authentication){ PrincipalDetails principalDetails = (PrincipalDetails) authentication...
이 포스팅은 아래의 강의를 참고하였으니 여기에서 공부하시는 것을 추천드립니다. https://inf.run/tcLk [무료] 스프링부트 시큐리티 & JWT 강의 - 인프런 | 강의 스프링부트 시큐리티에 대한 개념이 잡힙니다., - 강의 소개 | 인프런... www.inflearn.com 1. JWT 임시 토큰을 만들어서 기본 흐름 확인하기 1) MyFilter3 자바 파일 수정하기 이전 포스팅에서 생성한 MyFilter3 자바 파일에 토큰을 확인하는 로직을 추가 package com.cos.security1.config.filter; import javax.servlet.*; import javax.servlet.http.HttpServletRequest; import javax.servlet.http...
이 포스팅은 아래의 강의를 참고하였으니 여기에서 공부하시는 것을 추천드립니다. https://inf.run/tcLk [무료] 스프링부트 시큐리티 & JWT 강의 - 인프런 | 강의 스프링부트 시큐리티에 대한 개념이 잡힙니다., - 강의 소개 | 인프런... www.inflearn.com 1. JWT(JSON Web Token) 정보를 JSON 객체로 안전하게 전송하기 위한 개방형 표준(RFC 7519) 디지털 서명이 되어 있으므로 신뢰 가능 RSA or ECDSA 알고리즘을 이용 구조 Header: 토큰 유형과 서명 알고리즘 정보가 담김 Payload: 엔터티(사용자) 및 추가데이터에 대한 설명. 즉, 통신하고자하는 정보가 담김 Signature: 서명관련된 정보가 담김 Signature: ((Heade..