请教为什么要把时间用String存储

请问为什么要把时间用String存储?

很多人都这样说,应该把时间先转化为String再插入数据库,需要比较时间大小的时候,取出来先进行格式转换再比较。

我直接声明为sql.Date或者sql.Timestamp插入数据库不行吗?util.Date据说存进数据库的时候会丢失时间信息,只保留日期信息。

我用的MySQL数据库,本来实体类都是用sql.Timestamp来存储时间的,打算用mysql的timestamp来存,但正要写hbm.xml的时候,看到有人发帖说实体类不能用sql关键字声明属性,否则Hibernate的自动建表hibernate.hbm2ddl.auto=update会报错。

我现在是想做个论坛,用发帖时间、回复时间来排序进行显示,需要频繁地进行日期比较。

先谢谢了。

------解决方案--------------------
不管是date还是string都可以索引都可以比较大小,都可以拿出来显示

个人感觉没什么区别,实践中还是看习惯吧,我就比较习惯用string,因为我本能的想简化数据类型
------解决方案--------------------
个人猜测啊,采用Date类型存储,可能会牵扯数据库和应用之间时区设置的问题。
如果不存Date类型,又需要频繁进行比较,建议存储日期的长整型值,查找时先将日期转为长整型,这个查询效率比存日期或者字符串要高。
------解决方案--------------------
看个人喜欢了,你用String存没有问题,你用timestamp存也没有问题,即数据库用timestamp,程序中用sql.date,没有一定规定的,告诉你的那个哥们逗你玩呢!
------解决方案--------------------
最方便的还是存string 判断时间 用string也可以做排序