* JACKSON에 의해 객체가 문장화(JSON)되고, 이때 인자가 없고 is 또는 get으로 시작되는 메서드의 결과도 가져간다.
* return 값으로 파일의 경로를 설정했을 때는 @ResponseBody를 붙이지 않는다.
@RequestScope
- 매 요청마다 객체가 생성된다.
- Request : 서버는 요청 정보들을 보관하기 위해 HttpServletRequest 객체를 생성해 정보를 저장한다. 이 객체는 응답 결과가 전송될 때까지 유지 및 사용할 수 있다.
- RequestScope : Request 객체를 사용할 수 있는 범위(요청~응답)
세션
쿠키 : 클라이언트, 서버가 생성/수정/삭제 가능 => 보안 취약
세션 : 서버만 생성/수정/삭제 가능, 첫 방문 시 sessionId를 매우 길게 만들어 발급 => 보안 강화
Form으로 URL 쉽게 생성하기
<form method="GET" action="URL 주소" target="_blank">
<input type="text" name="id" placeholder="아이디">
<input type="password" name="password" placeholder="비밀번호">
<button type="submit">login</button>
</form>
- login 버튼을 누르면 'URL 주소?id=(입력값)&password=(입력값)' 로 동작
- 새로운 창에서 실행된다.(target="_blank")
- method="GET" 은 생략 가능
- GET : URL에 정보가 담겨서 전송된다.
- POST : URL에 정보가 담기지 않는다. 전송 데이터의 길이 제한이 없다.
절대 주소와 상대 주소
- 절대 주소 : 도메인 + 경로(http://www.naver.com/search...), 또는 경로 전체(/search...)
- 상대 주소 : 현재 위치를 기준으로 공통의 경로를 제외한 경로
ex) 'localhost/member/login' 에서 'localhost/member/logout'으로 이동 시 form의 action 값에 'logout'만 적어줘도 실행됨
thymeleaf
- 클라이언트에게 응답할 브라우저 화면을 만들어주는 View template engine
<div th:if="${조건문}">
<h1>...</h1>
</div>
th:if="${조건문}" -> 조건문이 true면 div 블럭이 보여지고, false면 보이지 않는다.
'프로젝트 & TIL > 일별 공부 기록 (백엔드 스쿨)' 카테고리의 다른 글
20일차 - 점프 투 스프링부트 (0) | 2023.03.20 |
---|---|
19일차 - 스프링부트와 DB 연결하기, Spring Data JPA (1) | 2023.03.17 |
17일차 - 스프링부트 Component, Autowired (0) | 2023.03.15 |
16일차 - 스프링부트 (0) | 2023.03.14 |
15일차 - HTML/CSS와 테일윈드 (0) | 2023.03.13 |