http://www.cnblogs.com/Henry_zp/archive/2010/12/05/1896909.html
一般来说,首页的内容比较多,但内容大多也有重复的地方,比如说某几块内容都是文章,只是文章类别不同,或者说某几块都是商品,只是商品的分类不同,那么我们在后台取数据时,都需要根据类别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。
下面我要说的是第三种方案,个人觉得第三种方案比第二种方案好,因为第二种方案改数据时,去找的话,有点不太方便。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
|
package
com.test.dao;
import
java.util.MissingResourceException;
import
java.util.ResourceBundle;
/**
* 获取配置资源文件 [公共参数] 信息
* @author Henry_zp
*/
public
class
CommonParam {
private
String propertyFileName;
private
ResourceBundle resourceBundle;
public
CommonParam() {
propertyFileName =
"com/test/dao/SysConfig"
;
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;
}
}
|
这里配置文件的地址一定要写对,不然就会报错。SysConfig.properties里面的内容是:
1
2
|
#测试一
NewsId=002
|
#表示注释,最后这个文件要以UTF-8的编码来保存。
测试代码如下:
1
2
3
4
5
6
7
8
|
package
com.test.dao;
public
class
Test {
public
static
void
main(String[] args) {
CommonParam test =
new
CommonParam();
System.out.println(test.getString(
"NewsId"
));
}
}
|
输出的结果为:002。