<%@ page contentType="text/html; charset=gb2312" language="java" import="com.jspdev.ch12.*,java.util.*,java.io.*" errorPage="error.jsp" %>
<html>
<head>
<title>Untitled Document</title>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
</head>
<jsp:useBean id="patient" class="com.jspdev.ch12.Patient" scope="page">
<jsp:setProperty name="patient" property="*"/>
</jsp:useBean>
<jsp:useBean id="patientBean" class="com.jspdev.ch12.PatientBean" scope="page"/>
<body>
<% 
patientBean.modifyPatient(patient);
%><center>
<h1>更改成功</h1>
<a href="mpatient.jsp">返回</a>
</center>
</body>
</html>这是我处理修改请求的页面  运行时候能够修改并且提示修改成功,可是返回页面后还是原来的信息,这是怎么回事啊?为什么没有写入数据库呢?望高手门指教!

解决方案 »

  1.   

    缓存问题另外,你的mpatient.jsp有查询吗
      

  2.   

    啊 不是缓存问题哦~~刷新了还是不会显示修改后的信息的我的查询是写在bean里的 如下:
    public void modifyPatient(Patient patient)throws Exception
    {

    PreparedStatement pstmt=con.prepareStatement("update patient set name=?,hospitalid=?, createdate=?,doctorid=?,usefullife=? where patientid=?");
    pstmt.setString(1,patient.getName());
    pstmt.setString(2,patient.getHospitalid());
    pstmt.setString(3,patient.getCreatedate());
    pstmt.setString(4,patient.getDoctorid());
    pstmt.setString(5,patient.getUsefullife());
    pstmt.setString(6,patient.getPatientid());
    pstmt.execute();
    }
      

  3.   

    写一个header.jsp
    里面包含
    //防止ie缓存页面
    response.setHeader("Pragma","No-cache");
    response.setHeader("Cache-Control","no-cache");
    response.setDateHeader("Expires", 0);
    然后把这个页面include到你的页面中去就可以解决这个问题了。
    是页面缓存的问题。