一般来说,首页的内容比较多,但内容大多也有重复的地方,比如说某几块内容都是文章,只是文章类别不同,或者说某几块都是商品,只是商品的分类不同,那么我们在后台取数据时,都需要根据类别ID来取值的。通常的做法都是写死ID,但写死又分为三种情况:
1、前台写死ID,通过<jsp:include page="xx.do?id=xx">,可以进行动态的包含内容。
2、可在service层写一个id的数组,String[] ids = {“”,"",""};用ids数组的下标来获得id值,这样也可以实现,如果数据库的ID值发生改变,只需要改变service层的ID数组就行。
3、用配置文件(这个配置文件以.properties结尾)。将ID值写在配置文件中,表示的方法就和map一样,key=value,这样就OK。
下面我要说的是第三种方案,个人觉得第三种方案比第二种方案好,因为第二种方案改数据时,去找的话,有点不太方便。
package com.rc.portal.webapp.util;
import java.util.MissingResourceException;
import java.util.ResourceBundle;
/**
* 获取配置资源文件 [公共参数] 信息
* @author Henry_zp
*/
public class CommonParam {
private String propertyFileName;
private ResourceBundle resourceBundle;
public CommonParam() {
// 配置文件名称不要带.properties 该文件是在class根目录下 如果没在com/test/dao/CommonParam
propertyFileName = "CommonParam";
resourceBundle = ResourceBundle.getBundle(propertyFileName);
}
public String getString(String key) {
if (key == null || key.equals("") || key.equals("null")) {
return "";
}
String result = "";
try {
result = resourceBundle.getString(key);
} catch (MissingResourceException e) {
e.printStackTrace();
}
return result;
}
}
这里配置文件的地址一定要写对,不然就会报错。CommonParam.properties里面的内容是: 切记 该内容中value值不要带空格 你可能看不到把鼠标点到value后面就能看到了
#人民币账号
#本参数用来指定接收款项的快钱用户的人民币账号
merchantAcctId=1001213884201
#客户编号所对应的密钥。。在账户邮箱中获取
key=5UHQX2G65W4ECF5G
#字符集 固定值:1 1代表UTF-8
inputCharset=1
#查询接口版本 固定值:v2.0注意为小写字母
version=v2.0
#签名类型 固定值:1 1代表MD5加密签名方式
signType=1
#查询方式 固定选择值:0、1
#0按商户订单号单笔查询(返回该订单信息)
#1按交易结束时间批量查询(只返回成功订单)
queryType=1
#查询模式 固定值:1 1代表简单查询(返回基本订单信息)
queryMode=1
#请求记录集页码 在查询结果数据总量很大时,快钱会将支付结果分多次返回。本参数表示商户需要得到的记录集页码。
#默认为1,表示第1页。
requestPage=1
#表示注释,最后这个文件要以UTF-8的编码来保存。
测试代码如下:
package com.test.dao;
public class Test {
public static void main(String[] args) {
CommonParam test = new CommonParam();
System.out.println(test.getString("merchantAcctId"));
}
}
输出: 1001213884201