如何动态创建改变发布web项目中的xml文件并实时的读取(实现动态配置项目)

时间:2022-03-12 21:49:48
项目发布有专门的人员管理,并非专业编码人员 因为企业有很多工厂 这样每个工厂用的数据库不一样 
现在项目读取的数据库连接是在一个配置文件里 问题来了:各工厂用的同一套代码但是每个工厂的数据库连接不一样 每个工厂用不同的服务器 也就是每个工厂一套运行环境一套代码但代码里的数据库连接不一样
每次发布配置文件里改不同工厂的连接数据库地址(目的就是为了这个!)
struts2+tomcat7
---------------------
想实现和.net那样配置文件和源文件分开,这样每次发布项目的时候源码的配置分开 数据库配置只配置一次即可 这种如果能实现那么每次只发布java源码即可配置文件不用动了---如果这个能实现也可以

现在想了这种方案:发布war包或非war包形式发布,管理员登陆后用代码动态创建或修改war包内xml配置文件,这样可以动态配置每个工厂的数据库连接

综上所述 各位有什么好的方案建议 如果动态创建路径问题也说一下
刚实验了一下动态创建不太好用,在项目里动态创建一个xml没法实时读取!

2 个解决方案

#1


war包 里面的文件修改方法 貌似只有一种  创建一个相同的文件名文件 添加并覆盖 进war文件中

配置多个数据源 给你个参考  http://blog.csdn.net/oracle_microsoft/article/details/4466810

#2


既然各个工厂都有一套运行环境,可以将数据源配置到本地(如tomcat写在context.xml或者server.xml或者catalina/localhost下,weblogic直接配置jdbc/resource),无需写在项目中,项目加载启动时使用本地数据源即可。

#1


war包 里面的文件修改方法 貌似只有一种  创建一个相同的文件名文件 添加并覆盖 进war文件中

配置多个数据源 给你个参考  http://blog.csdn.net/oracle_microsoft/article/details/4466810

#2


既然各个工厂都有一套运行环境,可以将数据源配置到本地(如tomcat写在context.xml或者server.xml或者catalina/localhost下,weblogic直接配置jdbc/resource),无需写在项目中,项目加载启动时使用本地数据源即可。