- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
项目中,经常把一部分功能独立出来,做一个java project,然后打成jar包供其他项目引用。这时候,如果jar包中需要读取配置文件信息,则很少把该配置打进jar包,因为它不方便修改,更多都是采用jar包读取外部配置文件。
案例:
项目工程名:auth -- 很明显,做鉴权使用的
项目配置文件:perties perties
perties 很明显是读取数据库配置的,perties就不解释啦
driver=oracle.jdbc.driver.OracleDriver
url=jdbc:oracle:thin:@34:1530:billdb
user=dw
passwd=dw123
testsql=select sysdate from dual
项目引用jar包:
lib/servlet-api.jar
lib/log4j-1.2.15.jar
lib/commons-collections-3.1.jar
lib/commons-logging-1.0.4.jar
lib/commons-pool.jar
lib/ojdbc14.jar
读取配置文件示例:
public class Config {
private static Properties properties;
private static Logger logger = Logger.getLogger(Config.class);
static {
try {
properties = new Properties();
// 读取SRC下配置文件 --- 属于读取内部文件
properties.load(Config.class.getResourceAsStream(/perties));
} catch (IOException e) {
logger.error(读取配置信息出错!);
}
}
public static String getObject(String prepKey) {
return properties.getProperty(prepKey);
}
public static void main(String[] agrs) {
(Config.getObject(testsql));
}
}
目录结构如下:
解决方案I:自定义 manifest.mf 文件
在项目下新建文件 manifest.mf,内容如下:
Manifest-Version: 1.0
Class-Path: lib/servlet-api.jar lib/log4j-1.2.15.jar lib/commons-collections-3.1.jar lib/commons-logging-1.0.4.jar lib/commons-pool.jar lib/ojdbc14.jar
解释:
Manifest-Version: 1.0 版本号,没啥特殊含义,但一定要有;
Class-Path: 所有引用的jar包
注意:
每个“:”后面都要加空格,Class-Path中每个jar包间也加空格
最后一行为空行
截图如下:
通过Eclipse 到处jar包
右键项目工程----Export --?选择Java下 JAR File,下一步
选择工程的src目录(其他的lib,.setting都不选中),去掉两个配置文件的选项(配置文件外部读取),选择导出jar包的位置;
注意:右侧的.classpath这些都不要选中,只把src下的java文件打包。
下一步
下一步:选中自定义的manifest.mf文件,完成
测试:
新建项目,导入刚刚生成的jar包和jar需要的所有包(把jar包所在工程lib下所有引用jar拿过来),在src下写入配置文件,目录结构如下:
测试:
public class Demo1 {
/**
* @param args
*/
public static void main(String[] args) {
System.out.println(Config.getObject(testsql));
ConnectionUtil.main(null);
}
}
测试结果:
log4j:WARN No such property [datePattern] in org.apache.log4j.RollingFileAppender.
select sysdate from dual
14:07:15,297 INFO ConnectionUtil:87 - ====== 当前
原创力文档


文档评论(0)