在项目开发中我们经常会定义很多常量或者枚举来存储一些固定不变的数据,目的是方便其它逻辑调用并且好
集中管理不易出错。但是当这些变量需要在我们的页面中出现甚至是JS中出现时我们通常的做法是在需要使用的页面传递
或者干脆直接写死,这样所产生的问题就是以后系统很难维护更新。
最近我们项目组也遇到这个问题了,我的解决方案是:
1.将系统中常用的枚举罗列出来
2.将这些枚举类转换成Map对象
3.将获得的Map对象放到Velocity公共变量中使得每个页面都可以使用
下面是我们实现的部分代码,希望对有类似问题的项目有所帮助
1.选取枚举类以自动部署的发布类型为参考
集中管理不易出错。但是当这些变量需要在我们的页面中出现甚至是JS中出现时我们通常的做法是在需要使用的页面传递
或者干脆直接写死,这样所产生的问题就是以后系统很难维护更新。
最近我们项目组也遇到这个问题了,我的解决方案是:
1.将系统中常用的枚举罗列出来
2.将这些枚举类转换成Map对象
3.将获得的Map对象放到Velocity公共变量中使得每个页面都可以使用
下面是我们实现的部分代码,希望对有类似问题的项目有所帮助
1.选取枚举类以自动部署的发布类型为参考
2.将枚举值转换为Map对象
3.放入Velocity公共变量中
4.VM中使用并生成公共JS代码
接下来假如我要访问发布类型的停止对应的值就可通过以下方式来完成了
java代码:
DeployTypeEnum.STOP
VM页面中:
$!{DeployTypeEnum.STOP}
JS中:
DeployTypeEnum.STOP
好了,通过以上实现就能够达到在三个地方(后台JAVA类中、VM页面中、JS文件中)使用一样的调用方式而不需要在页面或JS中将值固定写死,希望对有同样问题的项目有所帮助!
本文探讨了一种有效的方法,通过将枚举类转换为Map对象并将其放入Velocity公共变量中,以简化在Java类、模板页面和JavaScript文件中引用枚举的流程,从而提升代码的可维护性和可复用性。
1417

被折叠的 条评论
为什么被折叠?



