gpt4 book ai didi

tomcat - 如何在 Tomcat 中存储简单的自定义设置

转载 作者:行者123 更新时间:2023-11-28 21:59:03 25 4
gpt4 key购买 nike

我在 2 个位置运行 Tomcat 7 Web 应用程序;在一个位置有一个 MySQL 数据库,在另一个位置有一个 SQL-Server。在 webapp 的 context.xml 文件中我定义了两个 <Resources>包含两个数据库的数据库连接信息。因为我仍在开发中,所以我有时使用 MySQL 服务器(在家里)运行应用程序,有时使用 SQL 服务器(在工作中)。

直到现在,我每次都重新编译代码以连接到 MySQL 或 SQL-Server,方法是更改​​更改行

//connect to MySQL
DataSource ds = (DataSource) env.lookup( "jdbc/mysql" );

进入

//connect to SQL-Server
DataSource ds = (DataSource) env.lookup( "jdbc/sqlserver" );

是否有一种简单的方法让 Web 应用程序知道我在哪个位置,例如通过 xml 文件中的设置,以便 Web 应用程序知道它必须连接哪个数据库?

最佳答案

使 JNDI 名称成为外部配置设置,您可以将其检索为属性文件值或 VM 参数,或者可能作为环境变量值。

例如作为属性文件 config.propertiesput in the classpath :

db.jndi.name=jdbc/mysql

你得到如下:

Properties properties = new Properties();
properties.load(input);
String dbJndiName = properties.getProperty("db.jndi.name");

或者作为您在服务器启动脚本中指定的 VM 参数:

-Ddb.jndi.name=jdbc/mysql

你得到如下:

String dbJndiName = System.getProperty("db.jndi.name");

关于tomcat - 如何在 Tomcat 中存储简单的自定义设置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9980440/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com