목록Spring, SpringBoot (5)
Cohe
오늘은 Spring Security를 사용한 사용자 인증 및 권한 관리에 대해 깊이 있게 다뤄보았습니다. 특히 사용자 역할 설정과 관련된 몇 가지 흥미로운 이슈들을 해결하면서 많은 것을 배웠습니다. 이 포스트에서는 오늘 학습한 주요 내용들을 정리해보겠습니다.1. 사용자 역할 확인 로직먼저, 사용자의 역할을 확인하는 로직에 대해 알아보았습니다. Spring Security에서는 보통 다음과 같은 방식으로 역할을 확인합니다:if (!UserRoles.BOSS.contains(loginUser.getRole())) { // 사용자가 BOSS 역할이 아닐 때의 로직}이 코드는 UserRoles.BOSS가 Set 타입이고, loginUser.getRole()이 사용자의 역할을 반환한다고 가정합니다.2. 사용..
안녕하세요! 오늘은 Spring Boot 애플리케이션에서 JWT(JSON Web Token)를 사용한 인증 시스템 구현에 대해 알아보겠습니다. 특히 Access Token과 Refresh Token을 활용한 보안 강화 방법에 초점을 맞추어 설명하겠습니다.1. JWT란?JWT는 당사자 간 정보를 안전하게 전송하기 위한 컴팩트하고 독립적인 방식의 표준입니다. 이 토큰은 디지털 서명이 되어 있어 신뢰할 수 있습니다.2. TokenProvider 구현하기먼저, JWT 토큰을 생성하고 검증하는 TokenProvider 클래스를 구현해봅시다.@Componentpublic class TokenProvider { // Access 토큰을 위한 암호화 키 private final Key accessKey; ..

우선 프로젝트의 기본 구조를 설명하자면 mvc2 패턴으로 앞으로 작성해야 할 패키지는 controller, service, repository, dto, entity, html 코드이다.mvc 모델은 다음과 같다.Client: 사용자가 웹 브라우저를 통해 서버에 요청을 보낸다Controller: 클라이언트의 요청을 받아 적절한 서비스 메서드를 호출한다. 서비스에서 반환된 결과를 바탕으로 HTML 페이지를 생성하여 클라이언트에게 응답한다.Service: 비즈니스 로직을 처리하는 계층으로, 데이터 조작 및 변환을 수행한다. 필요한 경우 DTO를 사용하여 데이터를 전달한다Repository: 데이터베이스와 상호 작용하는 계층으로, 엔티티 객체를 사용하여 데이터를 저장하고 조회한다.DTO (Data Transf..

springboot project 게시판 만들기spring boot 게시판 만들기를 시작하면서, 앞으로의 목차와 프로젝트의 기본 gradle 설정을 이야기 하고자 한다.참고로 springboot 3.2.5 버전이다!!!목차게시판 만들기 : Board table에 맞춰 작성CRUD게시글의 목록/검색/페이지 처리게시물의 등록게시물의 조회게시물의 수정/삭제post 후 모달창Searchreply 개수 넣기댓글 달기 : reply회원 정보 : member시작하기시작하기 앞서 해당 링크에 접속한다 https://start.spring.io/해당 링크에서 다음과 같이 맞춰준다.프로젝트 옵션:Project: Gradle - Groovy 선택됨Language: Java 선택됨Spring Boot 버전: 3.2.5 선택됨..
MyBatis 스프링 연동 spring-jdbc와 같은 라이브러리를 이용해서 구현할 수도 있다. ⇒ templete라는 녀석이 있다. MyBatis: sql를 거의 유사하게 사용할 수 있다. JPA 프레임워크는 객체 타입의 프로그래밍에 더 가깝다. 마이바티스를 다운 받는다 mybatis – 마이바티스 3 | 소개 마이바티스는 단독 개발이 가능하다. → spring에 dao를 작성해서 처리하는 방식 마이바티스와 스프링을 연동하여 mapper 인터페이스만 이용하는 방식 : MyBatis-spring이라는 라이브러리를 사용해야 한다 build.gradle 작업 spring-jdbc가 필요하다.+ maven에서 다운받음 //spring jdbc 설치 implementation group: 'org.springf..