SSM格式化导出报表时间的格式
一、數(shù)據(jù)庫中的數(shù)據(jù)
時間格式為dateTime類型
?
二、對應(yīng)Moddel實(shí)體類
?private Date goOutTicketTime;private Date returnOutTicketTime;private Date depositPayTime;private Date orderInvalidTime;三、導(dǎo)出報表的action
對應(yīng)的導(dǎo)出要顯示的字段是Model中的屬性。
如果現(xiàn)在就導(dǎo)出:
四、解決方案
1.在Model下新建ext包(擴(kuò)展類包)
2.在此包下新建Model實(shí)體的擴(kuò)展類,此擴(kuò)展類要繼承原來的實(shí)體類。
將要格式化的時間新增為擴(kuò)展類的屬性并改名(后面添加changed),設(shè)置對應(yīng)的get以及set方法。
public class BusNotcompleteorderReportExt extends BusNotcompleteorderReport {//賬單導(dǎo)出時間格式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文件
找到對應(yīng)查詢報表數(shù)據(jù)的mapper文件,修改添加的對應(yīng)的
擴(kuò)展的mapper文件,其中BaseResultMap是使用代碼生成工具自動生成的。
下面是擴(kuò)展的自己寫的mapper文件。對應(yīng)的type要修改為擴(kuò)展后的實(shí)體Model。并且要繼承自動生成的resultMap。
?<!-- 結(jié)果集 --><resultMap id="BaseExtResultMap" type="**.model.ext.BusNotcompleteorderReportExt" extends="BaseResultMap"></resultMap><!-- 查詢未完成報表 --><select id="getBusNotcompleteorderReportByParam" parameterType="java.util.Map" resultMap="BaseExtResultMap">select*?frombus_notcompleteorder_report bnrwhere 1 = 1......4.修改對應(yīng)的action、service、serviceImpl、dao層對應(yīng)方法的返回類型為擴(kuò)展的實(shí)體Model。
5.在導(dǎo)出報表的action中修改要導(dǎo)出的Excel的屬性為擴(kuò)展類的屬性,要對于名字相同。
其他屬性省略。
fieldNames.add(new String[] {"GoOutTicketTimeChanged","ReturnOutTicketTimeChanged","DepositPayTimeChanged","OrderInvalidTimeChanged"});?
6.此時對應(yīng)的導(dǎo)出為
有問題請留言。
總結(jié)
以上是生活随笔為你收集整理的SSM格式化导出报表时间的格式的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Vue之X-Templates的使用
- 下一篇: Eclipse中配置Tomcat虚拟路径