Spring
-
Spring MVC - 타임리프(Thymeleaf) URL 링크 표현식Spring/Spring MVC 2022. 2. 2. 19:42
타임리프(Thymeleaf) URL 링크 표현식 타임리프에서 URL을 표현할 때는 @{ 링크 } 표현식을 사용하면 된다. @{/....} : 절대 경로, ex) @{/hello} @{ ... } : 상대 경로, ex) @{hello} 단순 URL @{/hello} -> /hello ex) 단순 URL 쿼리 파라미터를 포함한 URL @{/hello(param1=${param1}, param2=${param2})} -> /hello?param1=data1¶m2=data2 ex) 쿼리 파라미터 포함 URL 경로 변수가 포함된 URL @{/hello/{param1}/{param2}(param1=${param1}, param2=${param2})} -> /hello/data1/data2 ex) 경로 변..
-
Spring MVC - 타임리프(Thymeleaf) 유틸리티 객체(문자, 숫자, 날짜, URI), 날짜 유틸리티 객체(#temporals)Spring/Spring MVC 2022. 2. 2. 19:15
타임리프(Thymeleaf) 유틸리티 객체(문자, 숫자, 날짜, URI) 타임리프는 문자, 숫자, 날짜, URI 등을 편리하게 다루기 위한 다양한 유틸리티 객체들을 제공한다. 유틸리티 객체 설명 #message 메시지, 국제화 관리 #uris URI 이스케이프 지원 #dates java.util.Date 서식 지원 #calendars java.util.Calendar 서식 지원 #temporals 자바 8 날짜 서식 지원 #numbers 숫자 서식 지원 #strings 문자 관련 편의 기능 #objects 객체 관련 기능 제공 #bools boolean 관련 기능 제공 #arrays 배열 관련 기능 제공 #lists, #sets, #maps 컬렉션 관련 기능 제공 #ids 아이디 처리 관련 기능 제공 더..
-
Spring MVC - 타임리프(Thymeleaf)가 제공하는 기본 객체와 편의 객체Spring/Spring MVC 2022. 2. 2. 18:38
타임리프(Thymeleaf)가 제공하는 기본 객체와 편의 객체 기본 객체 : request, response, session, servletContext, locale 편의 객체 : param, session, @ 타임리프(Thymeleaf)가 제공하는 기본 객체들 타임리프는 개발자가 편리하게 개발할 수 있도록 기본 객체들을 제공한다. #request #response #session #servletContext #locale request = response = session = servletContext = locale = 서버를 가동시켜 웹브라우저에서 HTML의 소스 코드를 보면 다음과 같다. request = org.apache.catalina.connector.RequestFacade@5d39e..
-
Spring MVC - 타임리프(Thymeleaf) 기본 기능 1(텍스트, 변수 표현식, 지역 변수)Spring/Spring MVC 2022. 2. 2. 17:06
타임리프(Thymeleaf) 기본 기능 1(텍스트, 변수) 타임리프의 기본 기능들을 알아보자. 우선 타임리프를 사용하기 위해선 html 태그에 다음과 같이 추가한다. 텍스트 - text, utext th:text, [[....]] 기본적인 HTML 태그의 속성은 타임리프가 사용할 수 있다. HTML 태그 속성 앞에 th: 만 붙여주면 타임리프를 사용할 수 있으며 동적 HTML으로 렌더링 할 때 th:속성으로 화면을 구성해 준다. HTML 태그의 속성이 아닌 HTML 콘텐츠 영역안에서 직접 데이터를 출력하는 방법은 [[...]] 사용하면 된다. th:text 사용 컨텐츠 안에서 직접 출력하기 = [[${data}]] 서버를 가동시켜 해당 HTML의 소스 코드를 보면 다음과 같이 변경이 된다. th:text..
-
Spring MVC - 타임리프(Thymeleaf)에 대한 간단한 정리Spring/Spring MVC 2022. 1. 31. 23:01
더보기 타임리프 메뉴얼 기본 메뉴얼 https://www.thymeleaf.org/doc/tutorials/3.0/usingthymeleaf.html Tutorial: Using Thymeleaf 1 Introducing Thymeleaf 1.1 What is Thymeleaf? Thymeleaf is a modern server-side Java template engine for both web and standalone environments, capable of processing HTML, XML, JavaScript, CSS and even plain text. The main goal of Thymeleaf is to provide a www.thymeleaf.org 스프링 통합 메뉴얼 ht..
-
Spring MVC - HTTP 메시지 컨버터Spring/Spring MVC 2022. 1. 30. 14:05
HTTP 메시지 컨버터 HTTP 메시지 컨버터는 메시지 바디의 데이터 타입에 따라 데이터를 조회하거나 반환할 수 있다. 인터페이스로 구현되어 있으며 Byte, String, JSON 등 여러 타입의 데이터들을 HTTP 메시지 컨버터를 통해 요청 메시지 바디에 있는 데이터들을 조회하여 로직을 처리한 후 클라이언트가 필요한 데이터 타입으로 HTTP 메시지 컨버터를 통해 변환 후 변환된 타입으로 컨트롤러에 전송한다. HTTP 요청 메시지 읽기 요청 메시지가 오면 메시지 컨버터가 메시지를 읽을 수 있는지 확인하기 위해 canRead() 호출 - canRead : 대상 클래스 타입, content-type을 확인하여 해당 메시지 컨버터 실행 canRead() 조건을 만족하면 read()를 호출하여 객체 생성 및 ..
-
Spring MVC - 응답 메시지를 만드는 방법 (정적 리소스, 뷰 템플릿, HTTP API 메시지 바디에 직접 입력)Spring/Spring MVC 2022. 1. 29. 23:04
응답 메시지를 만드는 방법 정적 리소스 - 정적 HTML, CSS, javascript를 제공 뷰 템플릿 - 동적 HTML을 제공(뷰 템플릿을 사용한다) HTTP API, 메시지 바디에 직접 입력 - HTTP API를 제공하는 경우 HTML이 아니라 데이터를 전달해야 하므로 HTTP 메시지 바디에 JSON 같은 형식으로 데이터를 실어 보낸다. 정적 리소스 스프링 부트는 클래스 패스의 아래와 같은 디렉터리 안에 있는 정적 리소스를 제공한다. /static, /public, /resources, /META-INF/resources str/main/resources는 리소스를 보관하는 곳이고, 또한 클래스패스의 시작 경로이다. 따라서 다음 디렉토리에 리소스를 넣어두면 스프링 부트가 정적 리소스로 서비스를 제공..
-
Spring MVC - JSON으로 보낸 HTTP 요청 메시지 조회Spring/Spring MVC 2022. 1. 29. 20:39
JSON으로 보낸 HTTP 요청 메시지 URL에 쿼리 파라미터를 통한 요청 메시지, Form을 통한 HTTP message body에 쿼리 파라미터를 담아 요청하는 방법이 아닌 JSON으로 message body에 데이터를 직접 담아 요청 메시지를 보낸 경우 해당 데이터들을 어떻게 조회하는지 알아보자. HTTP API에서 주로 사용하며 데이터 형식은 JSON, XML, TEXT가 있다. 보통 JSON을 사용하며 POST, PUT, PATCH 메서드로 요청 메시지를 보낸다. message body를 직접 조회해야 하기 때문에 요청 파라미터와는 달리 @RequestParam, @ModelAttribute를 사용할 수 없다. JSON 요청 메시지와 응답 메시지 HttpServletRequest, HttpSer..