项目用的是springboot,首先在maven的pom文件中,添加如下依赖:
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-freemarker</artifactId>
</dependency>
编写对应的控制层:
@RestController
@RequestMapping("/seller/product")
public class SellProductController {
@Autowired
private ProductInfoService productService;
@SuppressWarnings("deprecation")
@GetMapping("/list")
public ModelAndView list(@RequestParam(value = "page", defaultValue = "1") Integer page,
@RequestParam(value = "size", defaultValue = "10") Integer size, Map<String, Object> map) {
PageRequest request = new PageRequest(page - 1, size);
Page<ProductInfo> productInfoPage = productService.findAll(request);
map.put("productInfoPage", productInfoPage);
map.put("currentPage", page);
map.put("size", size);
return new ModelAndView("product/list", map);
}
}
编写对应的模板list.ftl
<html>
<head>
<meta charset="utf-8">
<title>卖家后端管理系统</title>
<link href="https://cdn.bootcss.com/bootstrap/3.3.5/css/bootstrap.min.css" rel="stylesheet">
<link rel="stylesheet" href="/sell/css/style.css">
</head>
<body>
<div id="page-content-wrapper">
<div class="container-fluid">
<div class="row clearfix">
<div class="col-md-12 column">
<table class="table table-bordered table-condensed">
<thead>
<tr>
<th>订单id</th>
<th>姓名</th>
<th>手机号</th>
<th>地址</th>
<th>金额</th>
<th>订单状态</th>
<th>支付状态</th>
<th>创建时间</th>
<th colspan="2">操作</th>
</tr>
</thead>
<tbody>
<#list orderDTOPage.content as orderDTO>
<tr>
<td>${orderDTO.orderId}</td>
<td>${orderDTO.buyerName}</td>
<td>${orderDTO.buyerPhone}</td>
<td>${orderDTO.buyerAddress}</td>
<td>${orderDTO.orderAmount}</td>
<td>${orderDTO.getOrderStatusEnum().message}</td>
<td>${orderDTO.getPayStatusEnum().message}</td>
<td>${orderDTO.createTime}</td>
<td><a href="/sell/seller/order/detail?orderId=${orderDTO.orderId}">详情</a></td>
<td>
<#if orderDTO.getOrderStatusEnum().message == "新订单">
<a href="/sell/seller/order/cancel?orderId=${orderDTO.orderId}">取消</a>
</#if>
</td>
</tr>
</#list>
</tbody>
</table>
</div>
<#--分页-->
<div class="col-md-12 column">
<ul class="pagination pull-right">
<#if currentPage lte 1>
<li class="disabled"><a href="#">上一页</a></li>
<#else>
<li><a href="/sell/seller/order/list?page=${currentPage - 1}&size=${size}">上一页</a></li>
</#if>
<#list 1..orderDTOPage.getTotalPages() as index>
<#if currentPage == index>
<li class="disabled"><a href="#">${index}</a></li>
<#else>
<li><a href="/sell/seller/order/list?page=${index}&size=${size}">${index}</a></li>
</#if>
</#list>
<#if currentPage gte orderDTOPage.getTotalPages()>
<li class="disabled"><a href="#">下一页</a></li>
<#else>
<li><a href="/sell/seller/order/list?page=${currentPage + 1}&size=${size}">下一页</a></li>
</#if>
</ul>
</div>
</div>
</div>
</div>
</body>
</html>
启动项目:访问/sell/seller/order/list,展示出如下页面:
- 大小: 24.1 KB
分享到:
相关推荐
通过springboot 整合freemarker模板引擎,自动发送html格式邮件
通过以上步骤,你可以在SpringBoot应用中成功集成并使用Freemarker模板引擎。这只是一个基础的介绍,实际开发中,你可以根据项目需求配置更多的Freemarker特性和功能,如缓存管理、日期格式化等,以满足复杂的应用...
【SpringBoot2 整合FreeMarker模板,完成页面静态化处理】 在Web开发中,页面静态化是一种提高网站性能和用户体验的技术。它涉及到将原本动态生成的页面转换为静态HTML文件,减少对服务器的依赖,加快页面加载速度...
4. 在模板文件中使用Freemarker语法处理动态数据。 5. 可选地,自定义Freemarker的配置。 通过这个简单的示例,你应该能理解如何在Spring Boot中有效地使用Freemarker进行模板渲染。这只是一个基础的示例,实际上,...
在Springboot中使用Freemarker模板非常简单。我们只需要在controller类中返回模板的名称,然后Freemarker就会根据模板名称来渲染模板。 ```java @Controller public class IndexController { @RequestMapping(...
上述代码中,`Model`对象用于存储要在模板中使用的数据,`return "index"`表示我们要使用`index.ftl`模板来生成响应。 此外,如果想要通过字符串生成HTML,可以使用`FreemarkerTemplateUtils`类(需要引入`spring-...
它与Java紧密集成,允许开发者在模板中使用Java表达式,动态生成内容。在Web开发中,Freemarker通常用于视图层,接收后台传递的数据并生成动态页面。 结合SpringBoot和JPA,我们可以创建一个服务,该服务使用JPA的...
一、Freemarker模板引擎 Freemarker是Java中的一款模板引擎,可以根据模板和参数生成输出结果。在本方案中,Freemarker用于生成HTML模板,并将其转换为PDF文档。Freemarker的模板语法简单易懂,且支持各种数据类型...
1. 在FreeMarker模板中使用Shiro标签库:在.ftl文件顶部引入Shiro标签库: ```html ${'@org.apache.shiro.web.tags.ShiroTagLibHandler@getTagLibUri()'}"> ${shiro}" as shiro/> ``` 2. 使用Shiro标签:在模板中...
springboot整合FreeMarker模板,完成页面静态化处理
基于SpringBoot+freemarker实现的人事管理系统分为七大模块:绩效考核,招聘管理,档案管理,工资管理,考勤管理,培训管理,系统管理。本系统最大特色是有强大和灵活的权限控制功能,所有菜单,按钮功能均可由管理...
为了将数据从后端传递到前端,我们通常会将数据封装在一个Map对象中,其中键(key)对应于FreeMarker模板中的变量名,值(value)则是实际的数据。在上述代码中,我们返回了一个包含"users"键和用户列表的Map对象。...
在SpringBoot项目中,只需在`pom.xml`中添加Freemarker依赖,然后在`application.properties`中配置相应的模板路径,即可启用Freemarker模板引擎。这样,我们可以使用Freemarker语法编写模板文件,通过Java代码动态...
该项目是一款基于SpringBoot2和Freemarker技术的代码生成器源码,包含202个文件,涵盖47个FTL模板、32个CSS样式文件、31个JavaScript脚本文件、25个Java类文件、9个HTML文件、8个PNG图像文件、7个映射文件、6个YAML...
人事管理系统是一款基于SpringBoot框架和Freemarker模板引擎构建的企业级应用解决方案。该系统旨在简化和自动化企业中的人力资源管理流程,提高工作效率,确保信息的准确性和安全性。 系统核心功能包括员工信息管理...
Freemarker模板语言允许开发者创建HTML或其他格式的文档,并将Java对象的数据动态插入到这些文档中。这种方式使前后端分离更为清晰,提高代码可维护性。 **Druid** Druid是阿里巴巴开源的一个数据库连接池实现,它...
2. **配置FreeMarker**:在配置文件中设置FreeMarker模板的位置,以及其他的模板配置。 3. **创建视图解析器**:在Spring Boot的配置类中,配置FreeMarkerViewResolver。 4. **编写FreeMarker模板**:在指定的模板...
项目下载后自行修改application-dev.yml和jdbc.properties中的数据库链接。 启动项目后进入http://xxxx.xxxx.xxxx:xxx/swagger-ui.html查看相关接口,支持通过接口设置数据库链接切换后自动重启项目,代码生成器支持...
基于SpringBoot+FreeMarker+MyBatis+ExtJs实现的一个通用后台管理系统,界面美观,适合快速迭代开发 项目说明 技术栈: SpringBoot MyBatis Redis MySQL FreeMarker ExtJs 基于SpringBoot+FreeMarker+MyBatis+...