下面的代码打印出“vmtDataOrig.creationdate = 2012年11月3日”java.util.Date.toString()被打印出错误的格式
VmtData vmtDataOrig = VmtDataDao.getInstance().loadVmt(1);
System.out.println("vmtDataOrig.creationdate=" + vmtDataOrig.getCreationDate().toString());
这里是在所述的creationDate字段的定义VmtData类:
private Date creationDate = null;
这里是creationDate字段的休眠映射数据库表的列:
<property name="creationDate" column="CREATIONDATE" type="date"/>
MySQL数据库表中的CREATIONDATE列的类型为“date”,对于检索到的记录,其值为“2012-11-03”。
java.util.Date.toString()方法的Javadoc表示它应该以“dow mon dd hh:mm:ss zzz yyyy”格式打印Date对象。任何人都知道它为什么以“yyyy-MM-dd”的形式打印出来?
你确定这不是'java.sql.Date'吗? – SLaks
VmtData.java具有“import java.util。*;”它不会从java.sql中导入任何内容 – pacoverflow
@pacoverflow由于碰撞(两个单独的Date类导入),它无法导入java.sql.Date。这意味着方法中返回的Date可能会返回一个'java.sql.Date',但它会显式地在方法中输入,如'java.sql.Date date = blah;'。 – Vulcan