我现在做了两个JSP页面,在页面1上点击修改进入页面2,请问如何通过页面所选数据库表记录的id号,让该条需要修改记录的信息显示在界面2的一些text上呢?
本人是新手,求助各位了?
页面1是:page1.jsp 其中有一条这样的语句链接到page2.jsp中去
<td class="table"><a href="page2.jsp?id=<%=result.getInt("id")%>">修改</a></td>
本人是新手,求助各位了?
页面1是:page1.jsp 其中有一条这样的语句链接到page2.jsp中去
<td class="table"><a href="page2.jsp?id=<%=result.getInt("id")%>">修改</a></td>
解决方案 »
- 关于xmlbean的一个新增记录的问题。
- response.sendRedirect("register_success.jsp");为什么转不过去
- 怎样用xloadtree实现无限级目录树(数据库取节点)
- html 中有 readonly 属性 。我能不能在java程序中实现对页面这个属性的控制?
- 高手们快来,我不行了!
- 在struts中应用ajax更新表单。
- 谁有javamail的例子
- 求教:各位大虾 请问这个JSP页面的功能如何实现啊,最好能给些代码? 万分感谢
- 用jsp +javabean编写的程序,中的javabean应放到何处呢?还需要编译和设置吗?
- 本人搞JSP有一小段时间了,赶问哪里有EJB的入门书籍可以下载?
- 这样的url编码怎么实现
- 问一个servlet的问题
楼主【juchao】截止到2008-06-24 15:30:02的历史汇总数据(不包括此帖):
发帖数:31 发帖分:1922
结贴数:22 结贴分:1242
未结数:9 未结分:680
结贴率:70.97 % 结分率:64.62 %
楼主加油
如下://这里是Page2
String id=(String)request.getParameter("id");
//查数据库的代码自己写喽查到数据后显示就是了.
String id=(String)request.getParameter("id");
//查数据库的代码自己写喽
这段代码在Page2中我也写了啊,但是如何让那些text 显示原来的数据呢?
然后根据id来查询此记录的详细的信息。
也可以,传递你想要修改的参数,然后直接显示在文本框中,可以进行修改
if (request.getParameter("id")!=null) id=Integer.parseInt(request.getParameter("id"));啊?
{
sqlstr="select * from table111 where id=?";
ps=conn.prepareStatement(sqlstr);
ResultSet rs=ps.executeQuery();
Pid=rs.getString("pid");
Pname=rs.getString("pname");
Pkind=rs.getString("pkind");
Puseful=rs.getString("puseful");
Pdomain=rs.getString("pdomain");
Plag=rs.getString("plag");
Pen=rs.getString("pen");
id=rs.getInt("id");
Proad=rs.getString("proad");
}
此处id=rs.getInt("id");写对吗?
String id=(String)request.getParameter("id");
然后根据获得到的id到数据库查询相关记录信息 并显示出来就可以了!
{
sqlstr="select * from table111 where id=?";
ps=conn.prepareStatement(sqlstr);
ps.setInt(1,id);
ResultSet rs=ps.executeQuery();
Pid=rs.getString("pid");
Pname=rs.getString("pname");
Pkind=rs.getString("pkind");
Puseful=rs.getString("puseful");
Pdomain=rs.getString("pdomain");
Plag=rs.getString("plag");
Pen=rs.getString("pen");
Proad=rs.getString("proad");
}if (id!=0)
{
sqlstr="update table111 set pname=?,pkind=?,puseful=?,pdomain=?,plag=?,pen=?,proad=? where pid=?";
ps=conn.prepareStatement(sqlstr);
ps.setString(1,Pname);
ps.setString(2,Pkind);
ps.setString(3,Puseful);
ps.setString(4,Pdomain);
ps.setString(5,Plag);
ps.setString(6,Pen);
ps.setString(7,Proad);
ps.setString(8,Pid);
ps.executeUpdate();
}
我改成这样了,但还是报错了,大侠们帮我看看~~~~
50: ps.setInt(1,id);
51: ResultSet rs=ps.executeQuery();
52: Pid=rs.getString("pid");
53: Pname=rs.getString("pname");
54: Pkind=rs.getString("pkind");
55: Puseful=rs.getString("puseful");
Stacktrace:
org.apache.jasper.servlet.JspServletWrapper.handleJspException(JspServletWrapper.java:506)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:377)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:314)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:264)
javax.servlet.http.HttpServlet.service(HttpServlet.java:802)报错信息如上。
楼上有一位讲到要销毁result,不知道是啥意思??
现在到了page2.jsp页面了 因为你刚才传了一个名为id的参数,所以在这页就可以定义一个变量接受这个参数值 String id=request.getParameter("id"); 这句没啥解释的了吧!看你发的代码 估计你数据库里id的字段是整数类型,所以你判断下 接收到的这个参数值是否为空 如果不为空 把它转换成整形。
int int_id=0;
if (id!=null) {
int_id=Integer.parseInt(id));
}
然后根据这个id查询数据库里符合的记录
sqlstr="select * from table111 where id=?"; //查询id为XX的记录
ps=conn.prepareStatement(sqlstr); //
ps.setInt(1,int_id); //对应问号位置参数
ResultSet rs=ps.executeQuery(); //执行SQL语句
/* 以下是查询出数据后获得相信信息
Pid=rs.getString("pid");
Pname=rs.getString("pname");
Pkind=rs.getString("pkind");
Puseful=rs.getString("puseful");
Pdomain=rs.getString("pdomain");
Plag=rs.getString("plag");
Pen=rs.getString("pen");
id=rs.getInt("id");
到这结束 */
兩個jsp葉面jsp1和jsp2,在jsp1中的一條記錄后點擊查看,得到jsp1上這條記錄的id
然后跳轉到jsp2上﹐jsp2通過id查詢到另就張表胡內容