使用java进行JasperReports生成的mysql datetime格式更改

我正在使用JasperReport的iReport 4.5.0设计器来构建我的报告。 我在时间戳字段startDateendDate遇到一个问题。 在我的设计器中,我使用pattern更改了startDateendDate的格式。

问题是,当我将报告导出为.excel或.pdf时,它仍以时间戳格式提供日期,而不是我在模式中完成的格式YYYY-MM-dd

我的报告使用starDate生成2012-03-01 00:00:00.0但我希望我的excel报告在2012-03-01中像starYate一样有YYYY-MM-dd

你有任何解决方案, 我不想将我的数据库类型从datetime更改为date。

我的projectmain.jrxml文件代码如下:

                              <font size="24" />                                                                                                                                                   

在导出为Excel格式的情况下,您可以尝试设置net.sf.jasperreports.export.xls.detect.cell.type属性以获得正确的格式。

这个问题很奇怪。 您可以添加java.text.DateFormat类型的变量,并像在此示例中一样使用它:

                              

它对我有用。 对于PDF和XLS,我有两个textFields(使用DateFormat ,没有它)的正确数据。