SSM格式化导出报表时间的格式

一、数据库中的数据

时间格式为dateTime类型

 

二、对应Moddel实体类

 private Date goOutTicketTime;
 private Date returnOutTicketTime;
 private Date depositPayTime;
 private Date orderInvalidTime;

三、导出报表的action

对应的导出要显示的字段是Model中的属性。

如果现在就导出:

四、解决方案

1.在Model下新建ext包(扩展类包)

2.在此包下新建Model实体的扩展类,此扩展类要继承原来的实体类。

将要格式化的时间新增为扩展类的属性并改名(后面添加changed),设置对应的get以及set方法。

public class BusNotcompleteorderReportExt extends BusNotcompleteorderReport {
     //账单导出时间格式
  private String ReturnOutTicketTimeChanged;
  private String GoOutTicketTimeChanged;
  private String DepositPayTimeChanged;
  private String OrderInvalidTimeChanged;


  public String getReturnOutTicketTimeChanged() {
   if(getReturnOutTicketTime()!=null) {
    ReturnOutTicketTimeChanged=DateUtils.formatDate(getReturnOutTicketTime(), "yyyy-MM-dd HH:mm:ss");
   }
   return ReturnOutTicketTimeChanged;
  }
  public void setReturnOutTicketTimeChanged(String returnOutTicketTimeChanged) {
   ReturnOutTicketTimeChanged = returnOutTicketTimeChanged;
  }

其他省略,同理。

3.修改mapper文件

找到对应查询报表数据的mapper文件,修改添加的对应的
扩展的mapper文件,其中BaseResultMap是使用代码生成工具自动生成的。

下面是扩展的自己写的mapper文件。对应的type要修改为扩展后的实体Model。并且要继承自动生成的resultMap。

 <!-- 结果集 -->
    <resultMap id="BaseExtResultMap" type="**.model.ext.BusNotcompleteorderReportExt" extends="BaseResultMap">
  
   
  </resultMap>

      <!-- 查询未完成报表 -->
  <select id="getBusNotcompleteorderReportByParam" parameterType="java.util.Map" resultMap="BaseExtResultMap">
   select
    * 
   from
   bus_notcompleteorder_report bnr
   where 1 = 1

   ......

4.修改对应的action、service、serviceImpl、dao层对应方法的返回类型为扩展的实体Model。

5.在导出报表的action中修改要导出的Excel的属性为扩展类的属性,要对于名字相同。

其他属性省略。

fieldNames.add(new String[] {

             "GoOutTicketTimeChanged",


             "ReturnOutTicketTimeChanged",

             "DepositPayTimeChanged",

             "OrderInvalidTimeChanged"
             
            
     });

 

6.此时对应的导出为

有问题请留言。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
要实现SSM数据导出Excel,你可以按照以下步骤进行: 1.在Spring配置文件中配置POI相关依赖,例如: ``` <dependency> <groupId>org.apache.poi</groupId> <artifactId>poi</artifactId> <version>3.17</version> </dependency> <dependency> <groupId>org.apache.poi</groupId> <artifactId>poi-ooxml</artifactId> <version>3.17</version> </dependency> ``` 2.创建一个Controller处理导出Excel的请求,例如: ``` @RequestMapping("/export") public void export(HttpServletResponse response) throws Exception { // 设置response头信息 response.setContentType("application/vnd.ms-excel"); response.setHeader("Content-disposition", "attachment;filename=data.xls"); response.flushBuffer(); // 获取数据 List<Data> dataList = dataService.getDataList(); // 创建Workbook Workbook workbook = new HSSFWorkbook(); // 创建Sheet Sheet sheet = workbook.createSheet("数据"); // 创建表头 Row headerRow = sheet.createRow(0); headerRow.createCell(0).setCellValue("序号"); headerRow.createCell(1).setCellValue("名称"); headerRow.createCell(2).setCellValue("数值"); // 填充数据 int rowNum = 1; for (Data data : dataList) { Row row = sheet.createRow(rowNum++); row.createCell(0).setCellValue(data.getId()); row.createCell(1).setCellValue(data.getName()); row.createCell(2).setCellValue(data.getValue()); } // 输出数据 workbook.write(response.getOutputStream()); workbook.close(); } ``` 3.在前端页面中添加导出Excel的链接,例如: ``` <a href="/export">导出Excel</a> ``` 这样就可以实现SSM数据导出Excel了。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

霸道流氓气质

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值