前段时间,在写项目时,发现一个很奇怪的现象,在hibernate的映射文件bean类利,有一个属性posttime,在这个属性的getter方法里,我加了一个转换,如posttime的值为2014-12-11 19:23:12,在读取这个值时,转换成“10分钟前”,然后将10分钟前显示到页面,结果发现执行hibernate查询以后,数据库里的值由2014-12-11 19:23:12变成了“10分钟前”,很是郁闷,我只是想让它在页面显示成10分钟前,数据库中仍然是2014-12-11 19:23:12。然后在网上找了好长时间,最后发现了一个解决办法,在hibernate的映射文件XXX.hbm.xml里找到postime这个属性,加上access=field,成功解决问题。
<property name="posttime" column="posttime" type="string" access="field"/>