下面程序中没有直接把数据库连接信息写在程序里,而是使用一个 mysql.ini 文件(就是一个 properties 文件)来保存数据库连接信息,这是比较成功的做法:当我们需要把应用程序从开发环境移植到生产环境时,无需修改源代码,只需修改 mysql.ini 配置文件即可。
mysql.ini 文件如下:
driver=com.mysql.jdbc.Driver
url=jdbc:mysql://127.0.0.1:3306/select_test
username=root
pass=root
ExecuteDDL.java文件如下:
import java.util.*;
import java.sql.*;
import java.io.*;
public class ExecuteDDL {
private String driver;
private String url;
private String pass;
private String user;
public void initParam(String paramFiles) throws Exception {
Properties props = new Properties();
props.load(new FileInputStream(paramFiles));
driver = props.getProperty("driver");
user = props.getProperty("user");
pass = props.getProperty("pass");
url = props.getProperty("url");
}
public void createTable(String sql) throws Exception {
Class.forName(driver);
try (
Connection conn = DriverManager.getConnection(url,user,pass);
Statement stmt = conn.createStatement()
)
{
stmt.executeUpdate(sql);
}
}
public static void main(String[] args) throws Exception {
ExecuteDDL ed = new ExecuteDDL();
ed.initParam("mysql.ini");
ed.createTable("create table jdbc_test"
+ "( jdbc_id int auto_increment primary key,"
+ "jdbc_name varchar(255),"
+ "jdbc_desc text);");
System.out.println("搞定");
}
}
注意:**.ini文件放置的位置,如果与你的**.java文件放在一起,直接写这个就行ed.initParam("mysql.ini");
如果放在其他位置,用绝对路径ed.initParam("E:\\mysql\\mysql.ini");
关于相对路径的写法,以后再议吧!
搞定。。哈哈。心静茹止水。