如题,
这有一个web 程序,其中的web.xml 里面的参数 不是固定的,有时候要修改,比如数据库连接什么的,先想做一个东西,这个可以直接调用web.xml 里的参数,并且修改他。eg:   
        <servlet>
          <init-param>
              <param-name>driverClass</param-name>
              <param-value>com.microsoft.jdbc.sqlserver.SQLServerDriver</param-value>
</init-param>
         <init-param>
              <param-name>jdbcURL</param-name>
              <param-value>jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=db_kqxg</param-value>
         </init-param>     
       </servlet>
 现在的数据库是连接的sql2000, 现在想修改成 mysql数据;就是如何把这个里面的 driverClass 和jdbcURL 下面的这参数提取出来,然后修改啊?每次手动修改感觉挺麻烦的。

解决方案 »

  1.   

    我感觉有点难
    因为你平常运行j2ee项目的时候
    在eclipse里面修改了web.xml的话除了出错就是没反应
    所以你用代码来实现修改应该是没办法
      

  2.   

    你干嘛要那样啊!
    也实现不了啊!告诉你个方法吧:你可以把你的要用的字符串写到JVM内存中:System.setProperty(key, value);
    也可以把它写成.propeties文件啊,.propeties就可以让你随便改啊!
      

  3.   


    是啊,改WEB.xml 那你服务得重启啊..不行的..
      

  4.   


    问题是如果用户的话,他们想用什么数据库就用,那么他想改数据库,你不能让他手动改这个web.xml 吧。所以在上线前,让他有个配置的过程。安装好之后,让他配置什么数据库就是什么的。
      

  5.   

    这个有关于web.xml 的详细配置 你看看吧http://blog.csdn.net/lifeng_2009/archive/2010/02/05/5291546.aspx
      

  6.   

    自己做个GUI,然后在startup.bat里tomcat启动之前先java启动gui,让用户选择数据库。
    用户选完以后,根据输入改web.xml。
    然后启动tomcat。
    你要是等tomcat启动了再改,改了也没用了。
      

  7.   

    web.xml建议:在新建一个XMl文件,项目启动不用加载文件,写一个类进行上下文家在,通过判断该静态变量是否为空,你 修改完之后可以置为null,重新家在上下文即可。
      

  8.   

    另外写配置文件,你程序从这个配置文件中读,不要写web.xml。因为你写了web.xml就会导致服务器reload的,而且有些服务器你修改web.xml也并不会reload你自己随便找个地方写配置文件更好
      

  9.   

    写成propeties,在web.xml配置,交给spring来管理,很方便的