由于业务需要,在页面中更换数据库ip地址,
我用下面的办法重新加载了,applicationContext-*.xml
ContextLoader contextLoader = new ContextLoader(); 
contextLoader.closeWebApplicationContext(request.getSession().getServletContext()));
contextLoader.initWebApplicationContext(request.getSession().getServletContext()); 
但是却不知道怎么重新加载Dispatcherservlet-servlet.xml,这个。如果不重新加载它的话,数据源还是以前的那个。请问怎么去初始化它啊?

解决方案 »

  1.   

    ip是预先不知道的,就是我顺便写一个ip页面接收,然后就去链接那个数据库
      

  2.   

    你以为我想这么搞啊?人家就是要这样的功能,只要他输入ip就会去连接那个的数据库,切换数据源那个好弄,程序启动先把所有的数据源都添加,可是现在人家需要程序运行的时候切换数据库的ip了,然后获得新的数据源,哈哈 /
      

  3.   

    现在这个问题我解决了,只是当初问这个问题的时候都没人回答,今天无聊来看看,看见这个还没有人回答,无语了就,呵呵,
        spring 本身是有对jdbc的封装的,配置好c3p0直接给spring,程序运行时就会获得,最后我没办法,看着spring jdbc源代码自己给spring套了一层,获得数据源,放入Map中,获得Datasource,根据key取value,全部手动,才达到效果
      

  4.   

    现在这个问题我解决了,只是当初问这个问题的时候都没人回答,今天无聊来看看,看见这个还没有人回答,无语了就,呵呵,
        spring 本身是有对jdbc的封装的,配置好c3p0直接给spring,程序运行时就会获得,最后我没办法,看着spring jdbc源代码自己给spring套了一层,获得数据源,放入Map中,获得Datasource,根据key取value,全部手动,才达到效果请问这个问题你是如何解决的,方便留个QQ向你请教么