巧用spring配置常量
--常量也可以DI
有一些常量数据类型,比如货币,省份,转帐类型,等等。我们程序里都是用他们的代码进行运算的,但在页面显示的时候只能用他的名称显示给用户看。
因此有下面特点:
1有键值对,
2不经常变化(支持偶尔有变化),
3常用在页面做下拉选择,
4在编辑页面的时候此选择项又必须默认选中,
5键值关系固定。
碰到这种情况,有很多解决方法。比如可以在页面硬编码,把每个常量一一在页面写死,这样做的后果是代码很多,如果多个页面都包含此常量那么增加了维护的难度,另外一种是使用
<
fmt:message
/>
+属性文件来处理,虽然有所改善,但不能使用
<c:if>
测试和比较。下面我推荐一种方法,希望能对大家有所帮助。实现步骤如下:
1、 写一个公用工具类,所有的属性通过Spring启动时候注入
public class MyConstantUtils {
public static MyConstantUtils obj;
public MyConstantUtils (String string) {
obj = this;
}
/**
*
货币类型
键值对
Spring
启动的时候注入
*/
public Map currTypes;
public Map getCurrTypes() {
return currTypes;
}
public void setCurrTypes(Map currTypes) {
this.currTypes = currTypes;
}
//
其他常量
……
}
2、 配置文件web-xxx.xml,建议用一个单独的文件来配置常量。
<!--
在配置文件中配置常量