首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何读取属性文件并连接MySQL数据库?

问如何读取属性文件并连接MySQL数据库?
EN

Stack Overflow用户
提问于 2010-11-03 16:58:30
回答 2查看 64.5K关注 0票数 5

我需要从Java程序中连接我的MySQL数据库,为此我必须使用JDBC。

我需要为它提供必要的连接参数。我必须将这些参数存储在一个单独的配置文件中,以便在执行期间作为参数传递给您的Java程序。这里提供了一个示例db.properties文件供我参考。该文件的五行对应于数据库的主机、端口、数据库名称、用户名和密码。我需要根据您的个人系统设置来更改参数。

我该如何继续呢?如何连接MySQL数据库?

基本上,我有一个createdb.sql文件。我必须在mysql中运行该文件。它将创建一个数据库。现在我需要填充数据库。我有两个输入文件。我需要用java编写一个程序,它将输入数据文件的名称作为命令行参数,解析这些文件,并通过JDBC将其中包含的数据填充到您的数据库中。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2010-11-03 17:14:42

首先,您需要mysql jdbc connector。下载该库并将jar添加到类路径中。

接下来的步骤(在应用程序中)是加载jdbc驱动程序并创建连接

代码语言:javascript
复制
Class.forName("com.mysql.jdbc.Driver");
Connection con = DriverManager.getConnection(
                  "jdbc:mysql://[host][:port]/[database]", username, password);

因此,您必须读取配置文件,提取值并创建连接字符串(主机、端口、数据库部分)。

如果你正在使用eclipse:在你的项目中创建一个'lib‘文件夹,将jar复制到该文件夹,右键单击jar并将其添加到构建路径中。

如果您手动执行应用程序,并且是这样执行的:

代码语言:javascript
复制
java com.example.MyApplication

现在就这样做:

代码语言:javascript
复制
java -cp .;path/to/jarfile/connector.jar com.example.MyApplication

(我不确定库是否名为connector.jar,请在此处使用正确的文件名)

这是tutorial on adding libraries aka "setting the classpath" for java and javac。你需要理解这个概念!

票数 3
EN

Stack Overflow用户

发布于 2010-11-03 17:08:09

您可以将db.properties文件保存到外部固定位置,并访问它以供以后检索连接属性:

代码语言:javascript
复制
Properties props = new Properties();
FileInputStream in = new FileInputStream("/external/configuration/dir/db.properties");
props.load(in);
in.close();

String driver = props.getProperty("jdbc.driver");
if (driver != null) {
    Class.forName(driver) ;
}

String url = props.getProperty("jdbc.url");
String username = props.getProperty("jdbc.username");
String password = props.getProperty("jdbc.password");

Connection con = DriverManager.getConnection(url, username, password);

然后,在每个环境中,您都可以拥有不同的数据库设置副本,而不必更改应用程序文件(JAR、ER或其他任何文件)。

示例数据库连接属性文件:

代码语言:javascript
复制
# Oracle DB properties
#jdbc.driver=oracle.jdbc.driver.OracleDriver
#jdbc.url=jdbc:oracle:thin:@localhost:1571:MyDbSID
#jdbc.username=root
#jdbc.password=admin

# MySQL DB properties
jdbc.driver=com.mysql.jdbc.Driver
jdbc.url=jdbc:mysql://localhost:3306/MyDbName
jdbc.username=root
jdbc.password=admin
票数 15
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/4085420

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档