일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |
- json gson 차이
- Spring Spring boot 차이
- json
- 스프링 부트 기능
- git
- jwt메서드
- REST란
- @IdClass
- queryDSL
- 스프링부트오류
- Q 클래스
- Unsatisfied dependency
- spring서버
- 인텔리제이
- 1차캐시
- 최종 프로젝트
- JoinColumn
- JPA
- 스프링 부트 공식 문서
- Filter
- 빈생성안됨
- uncheck Exception
- ERD 작성
- github
- JPA주의사항
- 복합키
- Error creating bean with name
- REST API 규칙
- jpa에러
- jpa회원가입
- Today
- Total
목록내배캠 주요 학습 (147)
Everyday Dev System

1. 아래 코드를 간략화 할 수 있는가? List postList = postRepository.findAll(); List postResponseDtoList; postResponseDtoList = postList.stream() .map(post -> { PostResponseDto responseDto = new PostResponseDto(post); return responseDto; }) .collect(Collectors.toList()); 간략화한 결과 : List postList = postRepository.findAll(); List postResponseDtoList = postList.stream() .map(PostResponseDto::new) .toList()); 위 코드에..

1. OAuth 2.0 - OAuth 2.0 클라이언트 역할 수행 - https는 OAuth 환경에서만 작동한다. * Spring Security + jwt + OAuth 2.0 Social Login을 다같이 사용 가능하다. https://millo-l.github.io/OAuth2-%EA%B8%B0%EB%B0%98-%EC%9D%B8%EC%A6%9D%EB%B0%A9%EC%8B%9D/ OAuth 2.0 기반 인증 방식 | millo's tech blog 1. 서론 지난 포스팅까지 Session과 JWT 기반 인증 방식에 대해 알아봤다. Session과 JWT 기반 인증 방식은 모두 자신의 사이트에서 인증을 진행하기 위한 방식이다. 이 방식들로는 내가 만든 사이트의 millo-l.github.io http..

1. 회원가입 중복 예외 처리 DB에 이미 존재하는 username으로 회원가입을 요청한 경우 "중복된 username 입니다." 라는 에러메시지와 statusCode: 400을 Client에 반환하기 2. 회원가입 필드 예외처리 회원가입 시 username과 password의 구성이 알맞지 않으면 에러메시지와 statusCode: 400을 Client에 반환하기 3. 로그인 예외 처리 로그인 시, 전달된 username과 password 중 맞지 않는 정보가 있다면 "회원을 찾을 수 없습니다." 라는 에러메시지와 statusCode: 400을 Client에 반환하기 4. 토튼 검증 예외 처리 - 토큰이 필요한 API 요청에서 토큰을 전달하지 않았거나 정상 토큰이 아닐 때는 Okay "토큰이 유효하지 않..

아래와 같이 피드백을 받았습니다. public List getPostList() { List postList = postRepository.findAllByOrderByCreatedAtDesc(); List responseDtoList = new ArrayList(); for (Post post : postList) { post.setCommentList(commentRepository.findAllByPostIdOrderByCreatedAtDesc(post.getId())); responseDtoList.add(new PostResponseDto(post)); } return responseDtoList; } 먼저, PostService 클래스 내부에서 전체 게시글을 조회하는 메서드 코드입니다. DB에..
스프링 3,4주차 강의를 다 듣고, Lv2와 Lv3 과제를 마쳤습니다. 해당 과제를 제출하고 받은 피드백을 정리하고자 합니다. Question : 회원이 탈퇴할 경우에는 해당 회원이 작성한 댓글, 게시글은 어떻게 삭제되어야 할까요? 현재 댓글과 회원 , 게시글과 회원은 N:1 단방향의 연관관계입니다. CASCADE 속성을 어느 Entity 어느 필드에 기재해야 하는지 궁금합니다. 또한, 관계가 단방향, 양방향의 경우 둘다 CASCADE 속성을 줄 수 있는건가요? Answer: User 엔티티에 게시글의 연관관계를 추가하여 N:1 양방향 연관관계로 만들고 Cascade.Remove속성을 부여 ( 게시글을 삭제하면 게시글과 댓글의 연관관계 Cascade.ALL 설정이 되어 있기 때문에 댓글도 삭제가 됩니다...
1. Security를 테스트할 때 적용할 것이다. 2. 가짜 Filter 클래스를 생성해야 한다. 1. 테스트시 사용할 가짜 Filter 클래스 생성 package com.sparta.myselectshop.mvc; import jakarta.servlet.*; import jakarta.servlet.http.HttpServletRequest; import org.springframework.security.core.Authentication; import org.springframework.security.core.context.SecurityContextHolder; import java.io.IOException; public class MockSpringSecurityFilter impleme..
1. KakaoService 코드 수정 1) kakaoLogin() 메서드에 코드 수정 - JWT 토큰을 생성하고 반환하는 코드 추가 public String kakaoLogin(String code) throws JsonProcessingException { // 1. "인가 코드"로 "액세스 토큰" 요청 String accessToken = getToken(code); // 2. 토큰으로 카카오 API 호출 : "액세스 토큰"으로 "카카오 사용자 정보" 가져오기 KakaoUserInfoDto kakaoUserInfo = getKakaoUserInfo(accessToken); // 3. 필요시에 회원가입 User kakaoUser = registerKakaoUserIfNeeded(kakaoUserInf..

애플리케이션은 카카오 서버에서 보내주는 인증 코드를 받아야 합니다. 리다이렉트 url 쪽으로 카카오 서버에서 인증 코드를 보내줍니다. 그러므로, 인증 코드를 받는 Controller를 만들어 줘야 합니다. 컨트롤러는 받은 인증 코드를 Service 단으로 넘겨줍니다. Service 단에서는 인증 코드로 토큰을 요청하고 카카오 서버로 부터 토큰을 전달 받습니다. 카카오 API 문서를 보면 아래와 같이 필수 입력 사항들이 나오니, 이를 참고하여야 합니다. 참고 : https://developers.kakao.com/docs/latest/ko/kakaologin/rest-api#req-user-info-request login.html 내에 들어가는 REST API 키가 필요합니다. Log into Selec..

https://developers.kakao.com/console/app/936532/config/platform 카카오계정 accounts.kakao.com 해당 링크를 통해 나의 애플리케이션을 만든 후에 들어가서 Web에 도메인을 추가합니다. http://localhost:8081 등록하러 가기를 선택한 후에, Redirect URI 등록 버튼 클릭. http://localhost:8081/api/user/kakao/callback 입력 후 저장하고, 활성화 설정을 합니다. 왼쪽 카테고리 중 동의항목을 선택합니다. 닉네임을 필수로 설정합니다. 카카오계정을 선택으로 설정합니다.

Spring Security 는 필터 모임이라고 보면 됩니다. SecurityFliterChain을 Proxy 레이어로 감싸고 있습니다. DelegatingFilterProxy가 FilterChainProxy를 감싸고 있고, FilterChainProxy가 시큐리티 필터들을 모두 묶음으로 관리합니다. UsernamePasswordAuthenticationFilter는 AbstractAuthenticationProcessingFilter를 상속한 필터입니다. 여러개의 인증 방법이 있을 수 있음. 그러므로 AuthenticationProvider를 list로 갖고 있고 어덴케이션 매니저가 해당 요청에 맞는 provider를 맵핑해줌. UserDetails 인증된 정보를 가져오기 위함 User Entity 엔..