【发布时间】:2017-11-07 13:13:00
【问题描述】:
我希望将我的 Web 应用程序分发给我工作的公司的许多不同部门,我想知道允许每个部署提供自己的数据库实例的最佳方式是什么。我正在使用 Hibernate,第一次部署实际上创建了数据库并在其中导入了大量数据,但我正在寻找允许用户指定自己的数据库 URL 和凭据的最干净、最可靠的方法。目前我的代码有数据库信息的硬编码参考:
public DataSource dataSource()
{
ComboPooledDataSource dataSource = new ComboPooledDataSource();
try
{
dataSource.setDriverClass("net.sourceforge.jtds.jdbc.Driver");
String hostName = InetAddress.getLocalHost().getHostName();
dataSource.setJdbcUrl("jdbc:jtds:sqlserver://localhost:1433/MDHIS;InstanceName=ADT;sendUnicode=false");
dataSource.setUser("sa");
dataSource.setPassword("N0tY0urBu$1nes$");
}
catch (Exception ignored) {}
return dataSource;
}
我在网上读到,您无法使用 Web 应用程序的相对路径轻松读取配置文件(无论如何请粉碎这个神话,如果它是一个),所以我正在考虑使用环境变量。我希望它是完全可移植的,并且可以在 Ubuntu 和 Windows 上运行,所以不确定它的效果如何。我正在使用 100% 基于注释的方法,因此没有任何 XML 文件,我打算保持这种状态。
有什么建议吗?
谢谢!
【问题讨论】:
-
使用 spring Boot application.property 文件
-
我目前并没有真正使用 Spring Boot,但如果集成起来不是太疯狂,我可以随时看看。
-
感谢您为我指明了正确的方向!请参阅我选择的解决方案的答案:)。
标签: java spring hibernate file config