1、web应用开发之模板引擎
-
1.1、spring boot的web应用开发,是基于spring mvc
- 1.2、Spring boot 在spring默认基础上,自动配置添加了以下特性:
- 包含了ContentNegotiatingViewResolver和BeanNameViewResolver beans。
- 对静态资源的支持,包括对WebJars的支持。
- 自动注册Converter,GenericConverter,Formatter beans。
- 对HttpMessageConverters的支持。
- 自动注册MessageCodeResolver。
- 对静态index.html的支持。
- 对自定义Favicon的支持。
- 主动使用ConfigurableWebBindingInitializer bean
- 1.3、模板引擎的选择
- FreeMarker
- Thymeleaf
- Velocity (1.4版本之后弃用,Spring Framework 4.3版本之后弃用)
- Groovy
- Mustache
注:
jsp
应该尽量避免使用,原因如下:
1.jsp只能打包为:war格式,不支持jar格式,只能在标准的容器里面跑(tomcat,jetty都可以)
2.内嵌的Jetty目前不支持JSPs
3.Undertow不支持jsps
4.jsp自定义错误页面不能覆盖spring boot 默认的错误页面
2、FreeMarker Demo
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-freemarker</artifactId>
</dependency>
spring-boot-starter-freemarker
包依赖包含spring-boot-starter-web
包
3、Thymeleaf Demo
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-thymeleaf</artifactId>
</dependency>
4、Jsp Demo
- 1.新建spring项目—选择war包—选择web、dev模块;
- 2.在pom.xml文件添加以下依赖(provided表示编译时包含该包):
<dependency> <groupId>org.apache.tomcat.embed</groupId> <artifactId>tomcat-embed-jasper</artifactId> <scope>provided</scope> </dependency> <dependency> <groupId>javax.servlet</groupId> <artifactId>jstl</artifactId> </dependency>
- 3.在application.xml文件添加以下配置参数:
spring.mvc.view.prefix=/WEB-INF/templates/ spring.mvc.view.suffix=.jsp
- 4.打包后生成的大war包可直接使用
java(-jar)
命令运行,而小war包需放在容器如tomcat里运行。
5、WebJars Demo -- 附加
<dependency>
<groupId>org.webjars</groupId>
<artifactId>jquery</artifactId>
<version>2.1.4</version>
</dependency>
静态页面的调用:
<script src="/webjars/jquery/2.1.4/jquery.min.js">
6、致谢名单
- 冯永伟
原文地址:http://blog.51cto.com/manongxiaowu/2132665
时间: 2024-10-13 00:08:39