2016-05-17 74 views
1

将路径,用户名,密码和所有选项传递到单个字符串以创建与数据库的连接可能很方便。 有没有办法从一个URL创建一个DataSource对象?也许可以从一个开放的SQL连接创建一个数据源?从JDBC创建数据源URL

String url = "jdbc:mysql://localhost:3306/db?user=root&password=123&autoReconnect=true&useSSL=false&allowMultiQueries=true"; 
Connection conn = DriverManager.getConnection(url); 
+0

你从哪里得到字符串,为什么它需要全部在一个String中,而不是一个Properties对象? – Compass

回答

1

有没有一种方法来创建一个单一的URL数据源对象?

对于它的价值,这似乎为MySQL连接器/ J工作:

String connectionUrl = "jdbc:mysql://localhost:3307/mydb"; 

com.mysql.jdbc.jdbc2.optional.MysqlDataSource mds = 
     new com.mysql.jdbc.jdbc2.optional.MysqlDataSource(); 
mds.setUrl(connectionUrl); 

也许它可以创建从打开SQL连接数据源?

也许是。您可以尝试通过

conn.getMetaData().getURL() 

检索连接URL,并按上述步骤操作。