Spring boot

spring/error

[에러 해결] e = Content type 'text/plain;charset=UTF-8' not supported

Postman에서 API 요청시에 발생하는 에러입니다. 원인 Content-type이 text/palin으로 넘어가서 파싱 과정에서 발생하는 문제 해결 해결법은 간단합니다. Content-type를 application/json으로 변경해줍니다.

spring/게시판 api

Spring boot 게시판 API 서버 제작 (15) - 게시판 - 카테고리 - 웹 계층 구현

이번에는 Category API 처리를 위한 웹 계층을 구현해보겠습니다. Category Controller @RestController @RequiredArgsConstructor public class CategoryController { private final CategoryService categoryService; @GetMapping("/api/categories") @ResponseStatus(HttpStatus.OK) public Response readAll(){ // 모든 카테고리 조회 return Response.success(categoryService.readAll()); } @PostMapping("/api/categories") @ResponseStatus(HttpStatus..

spring/게시판 api

Spring boot 게시판 API 서버 제작 (14) - 게시판 - 카테고리 - 2

이번에는 저번시간에 이어 CategoryService를 계속 살펴보겠습니다. 저번 시간에는 read 메서드를 알아봤는데요, 이어서 create를 알아보겠습니다. CategoryService @RequiredArgsConstructor @Service @Transactional(readOnly = true) public class CategoryService { private final CategoryRepository categoryRepository; public List readAll() { List categories = categoryRepository.findAllOrderByParentIdAscNullsFirstCategoryIdAsc(); return CategoryDto.toDtoList(..

spring/study

[Spring] @Data 에 대해서 알아보자

Java에서 클래스를 정의할 때, 보통 필드(field)와 그에 상응하는 접근자 메소드(getter, setter)를 함께 정의합니다. 이때, 자바 빈(JavaBean) 규약을 따르는 클래스라면, 필드와 메소드를 정의하는 작업이 번거로울 수 있습니다. 이러한 문제를 해결하기 위해 롬복(Lombok) 라이브러리에서는 @Data 어노테이션을 제공합니다. @Data 어노테이션이란? @Data 어노테이션은 롬복 라이브러리에서 제공하는 어노테이션 중 하나로, 클래스 내부에 정의된 필드에 대해 getter, setter, equals, hashCode, toString 메소드를 자동으로 생성해줍니다. 이렇게 생성된 메소드들은 모두 자바 빈 규약을 따르므로, 자바 빈 규약을 따르는 클래스를 간단하게 정의할 수 있습니..

spring/게시판 api

Spring boot 게시판 API 서버 제작 (13) - 게시판 - 카테고리

로그인 기능을 완성하였으니 이제 게시판 기능을 구현해보겠습니다. 요구 사항 먼저 게시판 기능에 대한 요구사항을 정리하고 넘어가겠습니다. 게시판 기능에는 다음과 같은 항목들이 요구됩니다. 계층형 카테고리 물품 판매 게시글 CRUD 게시글 조건 검색 계층형 대댓글 게시글 별 쪽지 송수신 페이지 번호를 이요한 페이징 처리(게시글 조회) 무한 스크롤을 이용한 페이징 처리(쪽지 및 매매 내역 조회) 게시판 기능의 최종 목표는 회원들이 게시글을 작성하고 댓글을 달아 소통할 수 있도록 하는 것입니다. 계층형 카테고리 카데고리는 계층형 구조 입니다. 각각의 카테고리는 하위 카테고리를 가질 수 있습니다. Category Entity 생성 @Entity //JPA Entity임을 나타내는 어노테이션 @Getter // C..

spring/게시판 api

Spring boot 게시판 API 서버 제작 (12) - 로그인 - api 문서 만들기

이번에는 저번 시간까지 만들었던 로그인 API에 대한 문서를 만들어 보겠습니다. Swagger를 활용해서 API문서를 만들어볼건데요, Swagger에 대한 내용은 다음 포스팅을 읽어봐주세요. https://coding-kim.tistory.com/37 [Spring] Swagger에 대해서 알아보자 Swagger는 RESTful API 문서화를 위한 도구로, API의 사용 방법과 API의 매개변수, 반환값 등을 문서로 정리해주는 역할을 합니다. 이번 글에서는 Spring Framework에서 Swagger를 사용하는 방법을 소개하겠습 coding-kim.tistory.com Swagger 추가 Swagger를 사용하기 위해 build.gradle에 의존성을 추가하겠습니다. dependencies { im..

spring/study

[Spring] Swagger에 대해서 알아보자

Swagger는 RESTful API 문서화를 위한 도구로, API의 사용 방법과 API의 매개변수, 반환값 등을 문서로 정리해주는 역할을 합니다. 이번 글에서는 Spring Framework에서 Swagger를 사용하는 방법을 소개하겠습니다. Swagger 추가 먼저 Swagger를 사용하기 위해 build.gradle 파일에 다음과 같이 의존성을 추가합니다. dependencies { implementation 'io.springfox:springfox-swagger2:2.9.2' implementation 'io.springfox:springfox-swagger-ui:2.9.2' } Swagger 설정 Swagger를 사용하기 위해서는 @Configuration 어노테이션이 붙은 설정 파일을 작성해..

spring/게시판 api

Spring boot 게시판 API 서버 제작 (11) - 로그인 - Token 코드 리팩토링

이번에는 Token 관련 코드에 대해서 리팩토링을 진행해 보겠습니다. 문제 현재 프로젝트에서는 JwtAuthenticationFilter 클래스와 SignService 클래스에서 Token Service를 이용하여 token 생성, 추출, 검증 기능을 사용하고 있습니다. 그런데 TokenService 클래스를 살펴보면 /* access */ public String createAccessToken(String subject) { return jwtHandler.generateJwtToken(accessKey, subject, accessTokenMaxAgeSeconds); } public boolean validateAccessToken(String token) { return jwtHandler.val..

spring/게시판 api

Spring boot 게시판 API 서버 제작 (11) - 로그인 - 인증 refresh token으로 access token발급

이번에는 refresh token을 가지고 access token을 발급해 보겠습니다. SignService 추가 SignService.java 먼저 SignService 클래스에 refresh token 값을 인자로 받았을 때 access token을 반환해주는 로직을 추가하겠습니다. public RefreshTokenResponse refreshToken(String rToken) { validateRefreshToken(rToken); // refresh token 검증 String subject = tokenService.extractRefreshTokenSubject(rToken); // subject 추출 String accessToken = tokenService.createAccessTok..

spring/게시판 api

Spring boot 게시판 API 서버 제작 (10) - 로그인 - 인증 로직 테스트

이번에는 이전 시간에 만든 인증 로직을 테스트 해보겠습니다. 원래대로라면 코드만 보여드리고 설명을 생략하겠지만 이전에 만든 인증 로직에 대한 이해를 돕고자 테스트를 따로 준비했습니다. 테스트를 진행하기에 앞서 데이터베이스 초기화를 위한 TestInitDB를 생성하겠습니다. 데이터베이스 초기화 @Component public class TestInitDB { @Autowired RoleRepository roleRepository; @Autowired MemberRepository memberRepository; @Autowired PasswordEncoder passwordEncoder; private String adminEmail = "admin@admin.com"; private String mem..

얼킴
'Spring boot' 태그의 글 목록 (2 Page)