1、pom.xml文件中添加freemarker依赖
<!-- Spring Boot Freemarker 依赖 --> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-freemarker</artifactId> </dependency>
2、application.yml中配置freemarker
spring: # mvc: # view: # prefix: /WEB-INF/jsp/ # suffix: .jsp freemarker: template-loader-path: - /WEB-INF/ftl/ suffix: .html charset: utf-8 content-type: text/html
到此配置完成,以下为示例代码。
3、新建实体类User及控制器UserController
package com.huatech.domain; import java.util.Date; import org.hibernate.validator.constraints.Email; import org.hibernate.validator.constraints.Length; import org.springframework.format.annotation.DateTimeFormat; import com.fasterxml.jackson.annotation.JsonFormat; public class User { private Long id; // 日期类型输出到页面格式 @JsonFormat(pattern="yyyy-MM-dd HH:mm:ss",timezone = "GMT+8") // 页面字符串格式化为日期 @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss") private Date createTime; @Length(min = 2, max = 10, message = "用户名长度在{min}到{max}之间") private String username; @Email(message = "邮箱格式错误") private String email; private String remark; public Long getId() { return id; } public void setId(Long id) { this.id = id; } public Date getCreateTime() { return createTime; } public void setCreateTime(Date createTime) { this.createTime = createTime; } public String getUsername() { return username; } public void setUsername(String username) { this.username = username; } public String getEmail() { return email; } public void setEmail(String email) { this.email = email; } public String getRemark() { return remark; } public void setRemark(String remark) { this.remark = remark; } @Override public String toString() { return "User [id=" + id + ", createTime=" + createTime + ", username=" + username + ", email=" + email + ", remark=" + remark + "]"; } }
package com.huatech.controller; import java.util.List; import javax.validation.Valid; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Controller; import org.springframework.ui.Model; import org.springframework.validation.BindingResult; import org.springframework.validation.ObjectError; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.ResponseBody; import com.huatech.domain.User; import com.huatech.service.UserService; @Controller public class UserController { @Autowired private UserService userService; @GetMapping(value="/user/addPage") public String addPage(Model model){ model.addAttribute("user", userService.get(21L)); return "user/addPage"; } @PostMapping(value="/user/doAdd") @ResponseBody public Object doAdd(@Valid User user, BindingResult bindingResult){ if(bindingResult.hasErrors()){ StringBuffer sb = new StringBuffer(); List<ObjectError> errors = bindingResult.getAllErrors(); for (ObjectError objectError : errors) { sb.append(objectError.getDefaultMessage()).append("<br>"); } return sb.toString(); } userService.insert(user); return user; } }
4、在/WEB-INF/ftl/user下新建addPage.html
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title>Insert title here</title> </head> <body> <h3>新增用户信息</h3> <form action="/user/doAdd" method="post"> <span>姓名</span><input name="username"/><br/> <span>邮箱</span><input name="email"/><br/> <span>添加时间</span><input name="createTime" value="2017-12-26 19:24:00"/><br/> <span>备注</span><input name="remark"/><br/> <input type="submit"/> </form> <h3>用户详情</h3> <table> <tr><td>主键</td><td>${user.id}</td></tr> <tr><td>姓名</td><td>${user.username}</td></tr> <tr><td>邮箱</td><td>${user.email}</td></tr> <tr><td>添加时间</td><td>${user.createTime?string('yyyy-MM-dd HH:mm:ss')}</td></tr> </table> </body> </html>
相关推荐
spring-boot-scaffold, springboot脚手架,集成jpa freemarker dubbo security为一体
spring-boot-starter-freemarker spring-boot-starter-groovy-templates spring-boot-starter-hateoas spring-boot-starter-hornetq spring-boot-starter-integration spring-boot-...
spring-boot-email-core , it.ozimov:spring-boot-freemarker-email , it.ozimov:spring-boot-mustache-email , it.ozimov:spring-boot-pebble-email , it.ozimov:spring-boot-thymeleaf-email 持续集成: ...
freemarker-2.3.22 druid-1.0.14 mybatis-3.3.0 activemq-5.7.0 quartz-2.2.1 slf4j-1.7.12 logback-1.1.3 guava-18.0 apache-commons-xxx 注意事项 目录结构可参考 ./tree.txt。聪明的你一定知道什么样的文件应该...
boot集成freemarker freemarker实现转word 第一步:制作word模板 第二步:word模板转xml文件 第三步:修改xml文件内容(添加freemarker语法) 第四步:修改xml文件后缀为.ftl 第五步:使用freemarker的API语法实现输出...
spring boot 的项目,该项目已成功集成 actuator(监控)、admin(可视化监控)、logback(日志)、aopLog(通过AOP记录web请求日志)、统一异常处理(json级别和页面级别)、freemarker(模板引擎)、thymeleaf(模板引擎)、...
spring boot demo 是一个用来深度学习并实战 spring boot 的项目,目前总共包含 66 个集成demo。该项目已成功集成 actuator(监控)、admin(可视化监控)、logback(日志)、aopLog(通过AOP记录web请求日志)、统一异常...
- Spring Boot 模板,包括thymeleaf、freemarker、jsp、表单校验 等。 - springboot-docs - Spring Boot 文档生成工具,包括 Swagger、Spring RestDocs - springboot-bussiness - Spring Boot 业务应用,包括...
spring boot demo 是一个用来深度学习并实战 spring boot 的项目,目前总共包含 63 个集成demo,已经完成 52 个。 该项目已成功集成 actuator(监控)、admin(可视化监控)、logback(日志)、aopLog(通过AOP记录web请求...
请使用maven导入打开项目,此Demo使用IntelliJ IDEA创建,请尽可能使用IntelliJ IDEA
该项目已成功集成 actuator(监控)、admin(可视化监控)、logback(日志)、aopLog(通过AOP记录web请求日志)、统一异常处理(json级别和页面级别)、freemarker(模板引擎)、thymeleaf(模板引擎)、Beetl(模板引擎)、Enjoy...
使用Spring boot + FreeMarker 实现代码生成功能,完整案例可以查看 eladmin 项目,教程地址: https://www.ydyno.com/archives/1177.html
SpringBoot学习笔记所有源码集,包括 集成了freemarker、Servlet、拦截器、拦截器、Filter、静态资源处理、启动加载数据、Springboot 日志、JDBC使用、Springboot JPA、Mybatis、动态数据源、集成swagger、集成Redis...
1.40 Spring Boot集成EHCache实现缓存机制 1.41 Spring Boot分布式Session状态保存Redis 1.42 Spring Boot Shiro权限管理 1.43 Spring Boot Shiro权限管理 1.44 Spring Boot Shiro权限管理 1.45 Spring Boot Shiro...
在配置freemarker作为模版时,使用xml作为mvc配置文件,目前用testng进行集成测试无法通过 下载项目之后,运行gradle idea生成idea项目 目录说明 src/main/java/ - 类路径,程序的主要代码,将会编译成项目的class ...
该demo是基于spring boot 2集成hibernate及freemarker的可以运行的最基本的例子。 希望能对大家有帮助。
SpringBoot集成Freemarker+FlyingSaucer实现pdf在线预览.pdf
zo-spring-bootFrom zero to one with Spring Boot###roadmap权限:Shiro (Done)UI:SB Admin 2(Based of Bootstrap 3) (TODO)数据库:hsqldb (Done)持久化:Spring Data JPA (Done)MVC:Spring MVC (Done)Template ...
使用Druid Spring Boot Starter 集成Druid数据库连接池与监控 使用FastJsonHttpMessageConverter,提高JSON序列化速度 集成MyBatis、PageHelper分页插件 提供代码生成器根据表名生成对应的Domain(领域对象)、Mapper...
Spring Boot文档 i. 1. 关于本文档 ii. 2. 获取帮助 iii. 3. 第一步 iv. 4. 使用Spring Boot v. 5. 了解Spring Boot特性 vi. 6. 迁移到生存环境 vii. 7. 高级主题 3. II. 开始 i. 8. Spring Boot介绍 ii. 9. 系统...