일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 좋아요 기능
- jpa 성능최적화
- 지연로딩
- JPA #N+1 #JPA API #API
- smtp
- validation
- spring 예외처리
- springboot
- HTTP API
- password
- 낙관적 락
- 예외처리
- querydsl
- jpa hint
- JPA
- 비관적 락
- LazyInitializationException
- thymleaf
- 스프링 공통데이터
- DATA JPA
- 사설IP
- 쉘스크립트
- 타임리프 예외처리
- 스프링 예외처리
- 스프링부트
- 쿠키 #세션 #쿠키세션정리
- 타임리프
- thymeleaf
- api 성능최적화
- 공인IP
- Today
- Total
목록서버/SPRING (3)
jiny
스프링부트에서 API 예외도 HTML 에러페이지를 내보내는 경우와 동일하게 예외를 처리해준다 위처럼 같은 에러코드의 에러 이지만 produces = MediaType.TEXT_HTML_VALUE 옵션으로 HTTP 헤더의 Accept가 text/html 인 경우에는 errorHtml() 을 호출해서 error/ 경로에 있는 에러 페이지를 호출하게된다 그외 나머지의 경우는 error() 가 호출되며 ResponseEntity 로 http body 부분에 직접 json을 실어서 보낸다 그래서 Accept를 application/json으로 설정 후 의미없는 요청을 보내면 다음과 같이 기본적인 json 형식의 오류 데이터를 받을 수 있다 Html 페이지를 사용하는 경우에는 4xx, 5xx 오류 페이지만 만들어두..
웹 요청시 발생 하는 흐름은 다음과 같다. Http 요청 -> WAS -> 필터 -> 서블릿(dispatcherservlet) -> 인터셉터 -> 컨트롤러 요청을 보내면 서블릿을 지나 컨트롤러까지 도달하게 되고 로직이 실행된다. 우리가 구현한 컨트롤러 계층에서 Nullpointerexception 같은 예외가 발생하면 어떻게 될까 try catch 구문으로 null에 대한 예외처리를 한 상태라면 아무 문제가 없고 정상 흐름으로 진행되겠지만 try catch로 예외처리를 하지 않는다면 아래와 같이 예외가 WAS까지 전달됨 WAS
로그인전 1. 로그인 정보 전달 2. 유요한 계정이면 세션 생성 및 세션id를 웹브라우저로 전달 3. 클라이언트는 (랜덤값)세션id 를 쿠키에 저장 로그인후 1. 이후 새로고침을 하면 쿠키를 전달 2. 해당 쿠키 정보를 이용하여 세션이 유효한지 확인 3. 세션 정보가 있으면 OK 전달 로그인 담당 컨트롤러 서블릿은 세션을 구현하여 제공해준다. 웹요청 과정에서 전달받은 request에서 얻어올 수 있으며, setAttribute() 메소드에 원하는 스트링 키 값과 회원 정보를 넣을수 있다 @PostMapping("/login") public String login(...로그인정보) { Member loginMember = loginService.login(form.getLoginId(), form.getP..