现有两台服务器(连的同一数据库)当在一台服务器上作了数据更新后,数据在另一台机器上没有反应,可是数据库中的数据已经更该。
我用的是WEBLOGIC服务器,当重新发布一下应用程式序即可更新???怎样解决????

解决方案 »

  1.   

    代码里加上
    response.setHeader("Pragma","No-cache");//HTTP 1.1 
    response.setHeader("Cache-Control","no-cache");//HTTP 1.0 
    response.setHeader("Expires","0");//防止被proxy 或者jsp头部加上
    <% 
    response.setHeader("Pragma","No-cache");//HTTP 1.1 
    response.setHeader("Cache-Control","no-cache");//HTTP 1.0 
    response.setHeader("Expires","0");//防止被proxy 
    %>
    或者jsp的head标签中<head>
                      <META http-equiv=Expires content=0>
    <META http-equiv=Last-Modified content=0>
    <META http-equiv=Cache-Control content="no-cache, must-revalidate">
    <META http-equiv=Pragma content=no-cache></head>
    试试看
      

  2.   

    你的程序是用的什么连接的数据库?
    hibernate会有这种情况出现
      

  3.   

    你更新的数据是在什么时候读取的?
    如果是应用初始化的时候就不会即时更新。
    No-cache貌似只与浏览器有关。
      

  4.   

    个人认为有两种方法解决:
    1.浏览器设置:IE选项-》IE临时文件-》设置-》每次访问页面时
    2.在JSP页面加上
    <head>
         <META http-equiv=Expires content=0>
            <META http-equiv=Last-Modified content=0>
            <META http-equiv=Cache-Control content="no-cache, must-revalidate">
            <META http-equiv=Pragma content=no-cache>
    </head>
    个人认为两个一起设置效果更佳!
      

  5.   


    可能是这个原因,
    也有可能你数据库操作采用的不是自动提交模式(setCommit(false)),改成true。