用于在Java中保存连接字符串参数的Config文件

时间:2012-01-23 05:31:37

标签: java oracle configuration db2

我来自ASP .Net背景。我现在正在编写一个Java程序,用于将数据从DB2数据库导入Oracle数据库。我已经完成了导入这些数据的基本功能。

我遇到的问题是,我将所有连接属性都绑定到Java程序本身。是否有任何“最佳实践”方法将连接字符串详细信息存储在类似于我们用于ASP .Net的web.config的配置文件中? Java有什么样的机制来完成这个吗?或者我是否只需要使用I / O操作从简单的txt文件中读取键/值对?我读过一些关于.properties的文章?这是这样的吗?

我只是在朝着正确的方向寻找刺激。任何帮助将不胜感激。

2 个答案:

答案 0 :(得分:4)

如果您没有绑定到特定框架,最简单的方法是使用属性文件。看一下this question接受的答案的后半部分(不是你的XML位)。

根据您使用的是servlet容器还是类似容器(例如Tomcat,Glassfish等),您可能还希望考虑使用该容器的连接设置和连接池,这可能比回收您自己的连接更简单。

但是,如果您只是想尝试进入Java,这是为了让您了解JDBC,最初保持简单,只需从类路径上的db.properties文件中读取属性。

答案 1 :(得分:2)

至于处理属性/属性文件,我还没有真正看到Java中为它定义的标准。但是既然你是从Java开始的,那么你可以开始考虑了。 Apache Commons Config User Guide。它提供了通用配置界面,可用于从各种来源加载属性。

我建议使用Spring Framework。 Spring是事实上的标准Javav应用程序框架。以下链接Spring New Config Features应该为您提供一些最具创新性的方法来处理属性。

@Configuration
public class AppConfig {
    private @Value("#{jdbcProperties.url}") String jdbcUrl;
    private @Value("#{jdbcProperties.username}") String username;
    private @Value("#{jdbcProperties.password}") String password
}

它具有一些处理属性的高级功能,使用注释@Value并自动注入所需的属性。除此之外,Spring还会从您的文件中提取您的属性源详细信息。