servlet的跳转
2017-02-22 12:41
190 查看
servlet的跳转
一、客户端跳转
在Servlet中要实现客户端跳转,直接使用HttpServletResponse接口的sendRedirect()方法即可。但是需要注意的是,此跳转只能传递session范围的属性,而无法传递request范围的属性。
示例代码:(客户端跳转 ---ClientRedirectServlet)
public class ClientRedirectServlet extends HttpServlet{
@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp)
throws ServletException, IOException {
this.doPost(req, resp);
}
@Override
protected void doPost(HttpServletRequest req, HttpServletResponse resp)
throws ServletException, IOException {
//设置session属性
req.getSession().setAttribute("user", "admin");
//设置application属性
req.setAttribute("pwd", "123");
//页面跳转---客户端跳转
resp.sendRedirect("get_info.jsp");
}
}
示例代码:(配置Servlet映射 --- ClientRedirectServlet)
<!-- 配置Servlet映射,ClientRedirectServlet -->
<servlet>
<servlet-name>clientredirectservlet</servlet-name>
<servlet-class>com.lzcc.servlet.redirectdemo.ClientRedirectServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>clientredirectservlet</servlet-name>
<url-pattern>/clientredirectservlet</url-pattern>
</servlet-mapping>
二、客户端跳转
在Servlet中想要执行服务器端跳转,需要依靠RequestDispatcher接口完成,此接口提供了如下方法:
NO 方法 说明
1 forward(ServletRequest request, ServletResponse response) 页面跳转
2 include(ServletRequest request, ServletResponse response) 页面包含
使用RequestDispatcher接口的forward()方法即可完成跳转功能的实现,但是如果要想使用此接口还需要使用ServletRequest接口提供的如下方法进行实例化:
NO 方法 说明
1 getRequestDispatcher(java.lang.String path)
获取ReqeustDispatcher接口实例
示例代码:(服务器端跳转 --- ServerRedirectservlet)
public class ServerRedirectServlet extends HttpServlet {
@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp)
throws ServletException, IOException {
this.doPost(req, resp);
}
@Override
protected void doPost(HttpServletRequest req, HttpServletResponse resp)
throws ServletException, IOException {
// 设置session属性
req.getSession().setAttribute("user", "admin");
// 设置request属性
req.setAttribute("pwd", "123");
// 实例化RequestDispatcher
RequestDispatcher rd = req.getRequestDispatcher("get_info.jsp");
// 服务器转向
rd.forward(req, resp);
}
}
示例代码:(配置Servlet映射 --- ServerRedirectservlet)
<!-- 配置Servlet映射, ServerRedirect -->
<servlet>
<servlet-name>serverredirectservlet</servlet-name>
<servlet-class>com.lzcc.servlet.redirectdemo.ServerRedirectServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>serverredirectservlet</servlet-name>
<url-pattern>/serverredirectservlet</url-pattern>
</servlet-mapping>
一、客户端跳转
在Servlet中要实现客户端跳转,直接使用HttpServletResponse接口的sendRedirect()方法即可。但是需要注意的是,此跳转只能传递session范围的属性,而无法传递request范围的属性。
示例代码:(客户端跳转 ---ClientRedirectServlet)
public class ClientRedirectServlet extends HttpServlet{
@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp)
throws ServletException, IOException {
this.doPost(req, resp);
}
@Override
protected void doPost(HttpServletRequest req, HttpServletResponse resp)
throws ServletException, IOException {
//设置session属性
req.getSession().setAttribute("user", "admin");
//设置application属性
req.setAttribute("pwd", "123");
//页面跳转---客户端跳转
resp.sendRedirect("get_info.jsp");
}
}
示例代码:(配置Servlet映射 --- ClientRedirectServlet)
<!-- 配置Servlet映射,ClientRedirectServlet -->
<servlet>
<servlet-name>clientredirectservlet</servlet-name>
<servlet-class>com.lzcc.servlet.redirectdemo.ClientRedirectServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>clientredirectservlet</servlet-name>
<url-pattern>/clientredirectservlet</url-pattern>
</servlet-mapping>
二、客户端跳转
在Servlet中想要执行服务器端跳转,需要依靠RequestDispatcher接口完成,此接口提供了如下方法:
NO 方法 说明
1 forward(ServletRequest request, ServletResponse response) 页面跳转
2 include(ServletRequest request, ServletResponse response) 页面包含
使用RequestDispatcher接口的forward()方法即可完成跳转功能的实现,但是如果要想使用此接口还需要使用ServletRequest接口提供的如下方法进行实例化:
NO 方法 说明
1 getRequestDispatcher(java.lang.String path)
获取ReqeustDispatcher接口实例
示例代码:(服务器端跳转 --- ServerRedirectservlet)
public class ServerRedirectServlet extends HttpServlet {
@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp)
throws ServletException, IOException {
this.doPost(req, resp);
}
@Override
protected void doPost(HttpServletRequest req, HttpServletResponse resp)
throws ServletException, IOException {
// 设置session属性
req.getSession().setAttribute("user", "admin");
// 设置request属性
req.setAttribute("pwd", "123");
// 实例化RequestDispatcher
RequestDispatcher rd = req.getRequestDispatcher("get_info.jsp");
// 服务器转向
rd.forward(req, resp);
}
}
示例代码:(配置Servlet映射 --- ServerRedirectservlet)
<!-- 配置Servlet映射, ServerRedirect -->
<servlet>
<servlet-name>serverredirectservlet</servlet-name>
<servlet-class>com.lzcc.servlet.redirectdemo.ServerRedirectServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>serverredirectservlet</servlet-name>
<url-pattern>/serverredirectservlet</url-pattern>
</servlet-mapping>
相关文章推荐
- 大数据WEB阶段 (十)Response、ServletConfig、ServletContext、资源跳转三种方式
- servlet里分页跳转
- Servlet 跳转 redirect与forward跳转的区别
- Servlet跳转页面,怎么跳出框架frameset
- Servlet跳转可以用一下两种方式
- Servlet页面跳转实现方法的区别
- 跳转到servlet出现java.lang.InstantiationException:
- Servlet课程0425(六) 不经过验证直接跳转---session实现不同页面之间共享数据
- JSP和Servlet中的页面跳转和重定向辨析
- Servlet跳转之转向(Forward)
- Servlet跳转及上下文
- jsp中servlet的几种跳转方式
- Java开发之Servlet之间的跳转
- 跟小博老师一起学Servlet ——Servlet之客户端跳转
- Java Servlet【4】一个小的Servlet登录界面+页面跳转
- Servlet路径跳转问题
- Servlet页面跳转实现方法的区别
- 简单jsp servlet 跳转
- jsp,servlet页面跳转
- Servlet的地址,跳转