일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 31 |
- re.split
- 백준 17626
- Kotlin
- 백준 16719
- 백준 16235
- 프로그래머스
- sql 기술면접
- MySQL
- JPA
- 파이썬
- spring oauth
- JVM
- Coroutine
- 백준 16236
- spring cloud
- java
- 백준 19238
- Spring Boot
- spring security
- 백준 파이썬
- with recursive
- 프로래머스
- MSA
- 백준
- java 기술면접
- 백준 15685
- 웹어플리케이션 서버
- 백준 17779
- springboot
- Spring
- Today
- Total
목록Spring Boot (41)
시작이 반
OAuth : Open Auth 인증 처리를 대신해준다. developers.kakao.com/docs/latest/ko/kakaologin/rest-api Kakao Developers 카카오 API를 활용하여 다양한 어플리케이션을 개발해보세요. 카카오 로그인, 메시지 보내기, 친구 API, 인공지능 API 등을 제공합니다. developers.kakao.com 기존 로그인 방식 OAuth 로그인 방식 ( 카카오 ) 서버는 Code를 정상적으로 받았으면 인증이 정상적으로 됐다는 것을 알게 된다. -> 인증 처리 Access Token을 받는 순간 권한을 부여 받는다. 카카오 자원서버에 있는 정보에 접근할 수 있다. -> 권한 부여 Resource owner: 로그인 하려는 사람 Client : 자신 서..
삭제 수정 #authentication.principal 로 접근 가능
Controller에서 세션 찾는법 @GetMapping("/auth/joinForm") public String joinForm(@AuthenticationPrincipal PrincipalDetail principalDetail){ if(Optional.ofNullable(principalDetail).isPresent()){ return "redirect:/"; }else{ return "user/joinForm"; } } @AuthenticationPrincipal 어노테이션으로 찾을수 있다.
Spring Security란? Spring Security는 Spring기반의 어플리케이션의 보안(인증과 권한(을 담당하는 프레임워크이다. Spring Security는 Filter기반으로 동작한다. Filter는 Dispatcher Servlet으로 가기전에 적용되므로 가장 먼저 URL의 요청을 받지만, Interceptor는 Dispatcher와 Controller사이에 위치한다. 인증(Authentication): 해당 사용자가 본인이 맞는지를 확인하는 절차 인가(Authorization): 인증된 사용자가 요청한 자원에 접근 가능한지를 결정하는 절차 Principal(접근 주체): 보호받는 Resource에 접근하는 대상 Credential(비밀번호): Resource에 접근하는 대상의 비밀번호..
XSS : Cross Site Scripting 게시판이나 웹 메일 등에 자바 스크립트와 같은 스크립트 코드를 삽입하여 공격하는 기법 ex) 막는 방법은 간단히 '
커맨드 객체 커맨드 객체(Command Object) 란 HttpServletRequest 를 통해 들어온 요청 파라미터들을 setter 메서드를 이용하여 객체에 정의되어있는 속성에 바인딩이 되는 객체를 의미 커맨드 객체는 보통 VO 나 DTO 를 의미하며, HttpServletRequest 로 받아오는 요청 파라미터의 key 값과 동일한 이름의 속성들과 setter 메서드를 가지고 있어야 합니다. @Getter @Setter public class User { private String userName; private String phone; private int age; } @PostMapping("/test") public String ins(User user, Model model) { Strin..
JAP Paging DB에 저장된 데이터들을 페이지에 맞춰서 몇개씩 뿌릴건지 알려주는것. DB에 저장된 데이터가 30개라고 한다면 프론트에서 1페이지, 5개 라고 요청을 한다. 그러면 백엔드에서 전체 DB에서 데이터를 앞에서부터 5개씩 분류하여 해당 페이지에 맞는 데이터를 넘겨준다. 사용법 Pageable을 사용하거나 PageRequest를 사용한다. 여기선 Pageable을 사용하였음 Controller @GetMapping("/list") @ResponseBody public List GetBookList(Pageable pageable){ return bookDBService.FindBooksBypageRequest(pageable); } Service public List FindBooksBypa..
API로 Json을 받아와서 DTO에 저장시켰다. DTO에는 List item필드가 있고 이것을 Jparepository의 saveAll을 사용하여 DB에 저장시키기 위해 List로 바꾸는 작업이 필요했다. DTO @Data public class BooksResponseDto { private List item; } @Data public class Item { private Long itemId; //책 id? private String isbn; //책 고유번호 private String title; //책 제목 private String author; //책 저자 private String description; //책 설명 private String pubDate; //출간일 private St..