| 发表于:2007-09-11 17:44:475楼 得分:1 |
唉...很多人刚开始都会这样失败的!!!! 首先你在url里边输入test.jsp 的时候,服务器里边就会产生一个request,开始编译你的jsp文件,在这个过程,你在前面的某一处用了setattribute();在后边你可以用request.getattribute()取到.就像下边这样: <%@ page language= "java " import= "java.util.* " pageencoding= "gbk " %> <html> <head> <title> request.html </title> </head> <body> <form action= "request.jsp " method= "post "> name: <input type= "text " name= "name " size= "20 " maxlength= "20 "> <br/> <% string attr = new string( "about setattribute. "); request.setattribute( "data ", attr);========================> //前 %> <input type= "submit " value= "传送 "> </form> <% out.println(request.getattribute( "data "));========================> 后 %> </body> </html> 最后服务完成了编译的工作,完成生成了html代码,并把它们返回给浏览器去执行,服务器上的那个request已经不存在,所有与它一起的数据都没有了. 返回给客户端后,我们就看到了一个表单,然后点击 "传送 ",再次访问服务上的request.jsp,这时候又产生了一个新的request对像,但以前的那个数据已经不存在了,因为是不同的request了.所以你在request.jsp里边再取它,那是当然取不到的了.setattribute()是针对同一次服务器的访问的,第一次访问成功后我们看到了表单,点击 "传送 "后,发生了第二次与服务器的请求,产生了新的request | | |
|