您的位置:首页 > 运维架构

使用类的静态块来初始化properties属性文件配置的常量

2012-11-23 16:27 281 查看
在一个项目中,总有那么些常量,这时我们一般会将这些常量使用properties属性文件来进行配置,以方便代码的维护和日后的修改。

我的处理方式是:

1、使用一个constData.properties的属性配置文件,将我们需要的常量配置在里面(采用键值对的方式)。
2、使用一个final类、interface接口或者就是一个抽象类或普通类来定义这些常量,将它们集中定义在一起。这样做也是为了日后修改和维护的方便。然后使用一个static静态块去初始化这些我们定义的常量。

在服务启动的时候,这些常量就被初始化完成了。

代码如下:

constData.properties

#RFID设备类型编号type
RFID_EQUIPMENT_TYPE=5
#托盘的设备类型编号
SALVER_EQUIPMENT_TYPE=0
#叉车的设备类型
FORKLIFT_EQUIPMENT_TYPE=1
#人力搬运车的设备类型
CARRIER_EQUIPMENT_TYPE=6
#税务申报条件金额
TAX_DECLARATION_AMOUNT=100000
#纳税的税率
TAX_RATE=0.05
#大单金额
BIG_BILL_AMOUNT=10000
#跳过动画扣除金额
SKIP_FLASH_AMOUNT=100


ConstData.java

package com.nos.lsp.common;

import java.math.BigDecimal;
import java.util.ResourceBundle;

public class ConstData
{
public static final int RFID_EQUIPMENT_TYPE;//RFID设备类型编号type
public static final int SALVER_EQUIPMENT_TYPE;//托盘的设备类型编号
public static final int FORKLIFT_EQUIPMENT_TYPE;//叉车的设备类型
public static final int CARRIER_EQUIPMENT_TYPE;//人力搬运车的设备类型
public static final BigDecimal TAX_DECLARATION_AMOUNT;//税务申报条件金额
public static final BigDecimal TAX_RATE;//纳税的税率
public static final BigDecimal BIG_BILL_AMOUNT;//大单金额
public static final BigDecimal SKIP_FLASH_AMOUNT;//跳过动画扣除金额

static{
ResourceBundle rb = ResourceBundle.getBundle("constData");
RFID_EQUIPMENT_TYPE = Integer.parseInt(rb.getString("RFID_EQUIPMENT_TYPE"));
SALVER_EQUIPMENT_TYPE = Integer.parseInt(rb.getString("SALVER_EQUIPMENT_TYPE"));
FORKLIFT_EQUIPMENT_TYPE = Integer.parseInt(rb.getString("FORKLIFT_EQUIPMENT_TYPE"));
CARRIER_EQUIPMENT_TYPE = Integer.parseInt(rb.getString("CARRIER_EQUIPMENT_TYPE"));
TAX_DECLARATION_AMOUNT = new BigDecimal(rb.getString("TAX_DECLARATION_AMOUNT"));
TAX_RATE = new BigDecimal(rb.getString("TAX_RATE"));
BIG_BILL_AMOUNT = new BigDecimal(rb.getString("BIG_BILL_AMOUNT"));
SKIP_FLASH_AMOUNT = new BigDecimal(rb.getString("SKIP_FLASH_AMOUNT"));
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐