如下代码:
request.setAttribute("message", "两次输入的密码不一致");
response.sendRedirect("failure.jsp");
然后在failure.jsp中这样写:
<%= (java.lang.String)request.getAttribute("message") %>
你会发现request.getAttribute("message")得到的是null,
why?
sendRedirect()会丢失请求作用域的参数的,因为它可以理解是跳转到其他站点或者是其他页面,也就是请求不一样了.
应该写成:
request.getRequestDispatcher("failure.jsp").forward(request,response)
使用response.sendRedirect("xxx.jsp")地址栏将改变
使用request.getRequestDispatcher("xxx.jsp").forward(request,response)地址栏中的信息保持不变.
另外:
request.getRequestDispatcher("failure.jsp").forward(request,response)
request.getRequestDispatcher("failure.jsp").include(request,response)
的区别forward后面的语句终止,相当于return;include后面的语句继续执行;
分享到:
相关推荐
javascript request.setAttribute()详解 request.setAttribute()怎么用的? JSP1代码 String [] test=new String[2]; test[0]=1; test[1]=2;...request.setAttribute(test,test) ;...为什么JS P2中会找不到test?
response.sendRedirect(request.getContextPath()+"/admin/login.jsp"); } public void register(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { //...
if (session.getAttribute("person") == null) ... response.sendRedirect(request.getContextPath() + "/login.jsp"); }else{ request.getRequestDispatcher("fall.jsp").forward(request, response); }
request.setAttribute("gys", gys); request.getRequestDispatcher("providerAddxiugai.jsp").forward(request, response); }else if(canshu.equals("xiugaiok")){ int gysid=Integer.parseInt(request....
这些对象在Servlet编程中起到关键作用,帮助开发者在不同范围内存储和共享数据。 1. HttpServletRequest对象: Request对象代表客户端的HTTP请求,用于获取请求参数、请求头、请求路径等信息。通过`request....
3. **路径选择**:支持使用绝对路径或相对路径,但这里的相对路径是以服务器根目录为基准的。 4. **限制**:不能在响应体已经被写出后调用此方法,否则会导致异常。 #### 三、应用场景对比 - **...
request.setAttribute("userClass", userClass); //判断登陆用户是那种用户类型,如果是1跳转到学生页面student.jsp, //如果是2跳转到教师页面teacher.jsp,如果是3跳转到管理员界面manager.jsp int uc = rs....
public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { doPost(request,response); } public void doPost(HttpServletRequest request, ...
4. 使用request.setAttribute()和request.getAttribute()方法:使用setAttribute()方法来设置request属性,然后使用getAttribute()方法来获取该属性,例如:request.setAttribute("a", 00); request.getAttribute("a...
需要注意的是,在取得参数时,需要进行类型转换,这是因为放置在session和request中的对象的属性被看作java.lang.Object类型的了,如果不转换,在将直付给value时会报ClassCastException异常。 4. 使用session实现...
用户管理系统。语言JAVA public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, ... response.sendRedirect(request.getContextPath()+"/manager.jsp"); }
request.setAttribute("name","zhang"); response.sendRedirect("http://localhost:8080/MVC/MyServlt"); 那么在 MyServlet 中可以使用( )方法把属性 name 的值取出来。 A. String str=request.getAttribute("name...
<br>if (Name.equals("mike") && Password.equals("1234")) { session.setAttribute("Login", "OK"); response.sendRedirect("Member.jsp"); } else { out.println("登录错误,请输入正确名称...
RequestDispatcher.forward() 是在服务器端起作用的跳转方式。它将 HTTP 请求从当前的 Servlet 或 JSP 转发到另一个 Servlet、JSP 或普通 HTML 文件。使用 forward() 方法时,Servlet engine 会将请求从当前的 ...
; charset=gb2312" language="java" import="java.sql.*" errorPage="" %> ...session.setAttribute("login","1"); response.sendRedirect("ly.jsp?page=1"); }else{ out.println("密码错误"); } %> </html>
例如,对于`<input name="username" type="text" />`,在Servlet中可以使用`String username = request.getParameter("username");`来获取用户名。 2. URL参数传递: JSP页面中的超链接或表单的`action`属性可以...
c) 使用request.sendRedirect()并附带参数 d) 先使用request.setAttribute(),然后在目标页面中使用session.setAttribute() 以上就是关于JSP期末考试的一些常见知识点,包括JSP的语法元素、对象、生命周期、页面...
request.getSession().setAttribute("currentUser", user); response.sendRedirect("main.jsp"); // 跳转到主页面 } else { // 验证失败,返回错误信息 request.setAttribute("errorMessage", "用户名或密码...
* 传值可以使用 URL 参数、Session 和 request.setAttribute。 * 需要注意的是,JSP 跳转前不能有 out.flush(),否则会出现异常。 Servlet 跳转可以分为 Redirect 跳转和 Forward 跳转两种,JSP 跳转也可以使用这两...