Spring Boot 는 어떻게 템 플 릿 엔진 FreeMarker 를 통합 합 니까?
3860 단어 springboot집성freemarker
템 플 릿 엔진(여기 서 웹 개발 에 사용 되 는 템 플 릿 엔진)은 사용자 인터페이스 와 업무 데이터(내용)를 분리 시 키 기 위해 만들어 진 것 으로 특정한 형식의 문 서 를 생 성 할 수 있 으 며 사이트 의 템 플 릿 엔진 에 사용 되 는 표준 HTML 문 서 를 생 성 할 수 있 습 니 다.
자바 에서 주요 템 플 릿 엔진 은 JSP,Thymeleaf,FreeMarker,Velocity 등 이 있다.
앞 뒤 가 분리 되 고 유행 하면 서 템 플 릿 엔진 은 소외 되 었 지만 많은 오래된 프로젝트 들 은 자바 의 템 플 릿 엔진 렌 더 링 인터페이스 를 사용 하고 가끔 은 스스로 연습 항목 을 쓰 며 템 플 릿 엔진 을 사용 하 는 것 도 앞 뒤 가 분리 되 는 것 보다 빠르다.
이 시 리 즈 는 SpringBoot 가 JSP,Thymeleaf,FreeMarker 를 어떻게 통합 하 는 지 설명 한다.Velocity 에 대해 서 는 고 버 전의 SpringBoot 가 Velocity 를 지원 하지 않 는 다.여기 서도 설명 하지 않 는 다.
이 편 은 주로 Spring Boot 가 FreeMarker 를 어떻게 통합 하 는 지 설명 한다.
2.스프링 부츠 통합 FreeMarker
우선 우 리 는 의존 을 도입 해 야 한다.핵심 웹 의존 을 제외 하고 freemarker 의 statrer 만 도입 하면 된다.
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<!--freemarker -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-freemarker</artifactId>
</dependency>
그리고 프로필 이 야.주로 spring.freemarker 노드 의 보기 파일 디 렉 터 리 template-loader-path 와 파일 접미사 suffix 를 설정 합 니 다.로 컬 개발 이 라면 cache 는 false 로 캐 시 를 닫 고 파일 을 수정 한 후 서 비 스 를 다시 시작 하지 않도록 설정 할 수 있 습 니 다.
server:
port: 10900
spring:
profiles:
active: dev
freemarker:
enabled: true # freemarker
template-loader-path: classpath:/templates/ # ,
suffix: .ftl #
content-type: text/html
check-template-location: true #
cache: false #
charset: UTF-8 #
#
allow-request-override: false # HttpServletRequest ( )
allow-session-override: false # HttpSession ( )
expose-request-attributes: false # request merge , model
expose-session-attributes: false # merge , HttpSession model
expose-spring-macro-helpers: true # springMacroRequestContext RequestContext Spring's macro library
prefer-file-system-access: true # template, , true
그리고 resources 디 렉 터 리 에 templates 디 렉 터 리 를 새로 만 들 었 습 니 다.각각 hello.ftl 과 mv.ftl 파일 을 새로 만 들 었 습 니 다.
<h3>hello freemarker</h3>
<!DOCTYPE html>
<html lang="en">
<h3>mv freemarker</h3>
<span>I'm ${name} from mv method</span>
</html>
여기 서 FreeMarker 를 어떻게 통합 하 는 지 설명 하고 FreeMarker 문법 에 대해 너무 많은 설명 을 하지 않 기 때문에 두 개의 간단 한 html 파일 만 프레젠테이션 으로 제공 합 니 다.이 어 Controller 류 경로 페이지 를 만 듭 니 다.이 종 류 는 매우 간단 합 니 다.hello 페이지 를 뛰 어 넘 고 name=imyang 을 가지 고 뮤 직 비디오 페이지 를 뛰 어 넘 습 니 다.
@Controller
@RequestMapping("index")
public class IndexApi {
@RequestMapping("/hello")
public String hello(){
return "hello";
}
@RequestMapping("/mv")
public ModelAndView mv(){
ModelAndView mv = new ModelAndView("mv");
mv.addObject("name","yanger");
return mv;
}
}
항목 시작,각각 접근http://localhost:10900/index/hello화해시키다http://localhost:10900/index/mv페이지 정 보 를 보 여줄 수 있 습 니 다.원본 주소:https://github.com/imyanger/springboot-project/tree/master/p19-springboot-freemarker
이상 이 바로 본 고의 모든 내용 입 니 다.여러분 의 학습 에 도움 이 되 고 저 희 를 많이 응원 해 주 셨 으 면 좋 겠 습 니 다.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
thymeleaf로 HTML 페이지를 동적으로 만듭니다 (spring + gradle)지난번에는 에서 화면에 HTML을 표시했습니다. 이번에는 화면을 동적으로 움직여보고 싶기 때문에 입력한 문자를 화면에 표시시키고 싶습니다. 초보자의 비망록이므로 이상한 점 등 있으면 지적 받을 수 있으면 기쁩니다! ...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.