JSTL/EL如何方便高效的访问Constants和CodeTable(存储于DB的应用系统变量)
之前只是简单的使用JSTL/EL进行输出,一般的思路很简单:retrieve data -> put to Request -> JSTL/EL
一直没太注意两个问题:
1、JSTL/EL官方上无法方便、直接的访问静态变量。
比如,我们定义了一个Constants类:
此时表示要获取Gender的CodeTable,并以codeValue为值,codeName为Label
是否存在更简单有效的方法?
我目前正在整合一些信息并加以模式化,试图提供一个简洁有效的办法来达成目标,也希望大家参与讨论,提供“一站式”的解决方案
这里表示要以Code Type为Gender的作为下拉框元素
2、用以打印:
对了,我这里为了方便,封装了个简单的CodeTable POJO,一并贴出来:
此时表示要获取Gender的CodeTable,并以codeValue为值,codeName为Label
是否存在更简单有效的方法?
我目前正在整合一些信息并加以模式化,试图提供一个简洁有效的办法来达成目标,也希望大家参与讨论,提供“一站式”的解决方案
我们几年前是通过自定义tag,还有freemarker宏实现这种鸟功能。每个人只要放一个key进去,就能取出各种值:单值,列表,map之类的。 25 楼 itstarting 2011-04-28 haitaohehe 写道楼主 看下你的代码bulidCodeTables()中map为空啊 并没有放值啊..
你说的对,这就是我认为比较有意思的设计之一:这里存放的只是KEY及其引用,以确保值是refreshable的。
这样的话,是否缓存及其缓存策略,都交给原来的service/dao来做(比如我所涉及的项目就是用了简单的iBatis LRU缓存,24小时自动flush),这里既然是轻量级的做法,就不要管这些了。
当然了,你如果愿意,也可以在这里考虑缓存,但此时需要考虑缓存的生命周期管理了