浏览 2349 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
|
|
---|---|
作者 | 正文 |
发表时间:2007-09-20
结合我做过的项目,我感觉对这一条有些疑问。 1. 举个例子,在jsp页面中显示时间,一般的做法是直接在action里面将时间格式化好,然后传字符串到页面上。如果根据这个最佳实践,岂不是要传date对象?或者变通的做法,将date对象中的具体long数值作为string 传到页面上,再用help类格式化? 2. 另外象有些key-value类型的数据,比如有一个选择框,用来选择城市,在vo中保存的应该是城市的key,那么是应该在action中处理好,然后传城市的value到页面上呢,还是在页面上用help类来查找城市的key对应的value呢?大家平时都是怎么做的啊? 3. 顺便想到一个问题,我看到有不少开源项目在存储时间,日期的时候是直接存储的具体的long值,有没有朋友在自己的项目中是这样做的?有什么优缺点呢? 声明:ITeye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
推荐链接
|
|
返回顶楼 | |
发表时间:2007-09-20
第一个问题,你说的这种做法不是最佳实践,应该在页面上用相应的Tag或者模板提供的转化方式直接转
第二个问题,这些数据字典往往不大会改变,如果量比较小,可以考虑在系统启动的时候一次性load到servletContext里面,然后用Tag或者模板的方式获取。系统启动的时候load还有一个好处,就是如果你使用Hibernate,那么这些数据可以在系统启动时就被装入二级缓存,之后的存取效率是很高的。 第三个问题,极少数会这么做,除了在不同的系统之间传递数据,由于平台等各个方面的原因,会导致互相之间对Date类型的定义不同,此时不妨用long型进行传递,相当于同时遵循一个协商好的协议。 |
|
返回顶楼 | |
发表时间:2007-09-20
1、不过tag或者模板不也是help类的一种具体实现方式么。
2、我们目前是用的你说的这种方式,不过还是想了解下这种方式有什么优缺点,或者还有没有更好的方式,谢谢你的回答。 3、我看过jive,opencms的数据库,他们都是这样做的,我们自己的项目一般是在数据库中定义的datetime类型,感觉在存取数据的时候因为有java.util.date 到java.sql.date的转换,总是不是很爽,也许他们用long类型就是为了避免这种转换?因为经常要做比较复杂的组合查询,所以我们没有用hibenate. |
|
返回顶楼 | |
发表时间:2007-09-20
该回答的我都回答了,你的回答我无法再做出进一步的回答。你其实已经知道答案了,对自己自信一些,实践中觉得好的,就是好的。
|
|
返回顶楼 | |