当前位置:首页 > 实用技巧 >

servlet层如何设置定向跳转(servlet跳转地址不对怎么办)

来源:原点资讯(www.yd166.com)时间:2024-01-15 22:12:24作者:YD166手机阅读>>

1、跳转的方式

转发: forward

重定向: redirect

2、转发和重定向代码怎么完成

1、转发 //请求转发到/b对应的Servlet request.getRequestDispatcher("/b").forward(request,response); 2、重定向 response.sendRedirect(request.getContextPath() "/b");

3、转发和重定向的区别?

相同点:都可以完成资源的跳转

不同点:

转发是request对象触发的,服务器内部进行转发

重定向是response对象触发的,要将重定向的路径相应给浏览器

转发是一次请求,浏览器地址栏上地址不变

重定向是两次请求,浏览器地址栏上的地址发生变化

重定向路径需要加项目名(webapp跟路径web目录)

转发是在本项目内部完成资源的跳转

重定向可以完成跨app跳转,例如可以跳转到https://www.baidu.com

4、什么时候采用转发,什么时候采用重定向

1、大部分情况下都使用重定向

2、若想完成跨app跳转,必须采用重定向

若在上一个资源中向request范围中存储了数据,希望在下一个资源中从request范围中取出,必须使用转发

3、重定向可以解决浏览器的刷新问题

5、重定向解决页面刷新问题

public class Save extends HttpServlet { @Override protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { //解决中文乱码 request.setCharacterEncoding("UTF-8"); //获取表单数据 String usercode = request.getParameter("usercode"); String username = request.getParameter("username"); Connection conn = null; PreparedStatement ps = null; int row = 0; try { Class.forName("com.mysql.jdbc.Driver"); conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/javaee", "root", "admin"); conn.setAutoCommit(false); ps = conn.prepareStatement("insert into t_user(usercode,username) value(?,?)"); ps.setString(1,usercode); ps.setString(2,username); row = ps.executeUpdate(); conn.commit(); } catch (ClassNotFoundException e) { e.printStackTrace(); } catch (SQLException throwables) { //如果发生异常,如果conn!=null,回滚数据 if(conn != null) { try { conn.rollback(); } catch (SQLException e) { e.printStackTrace(); } } throwables.printStackTrace(); } finally { //省略关闭 } if(row ==1) { //执行成功,跳转到成功页面 //1. 转发 //浏览器只进行一次请求,如果此时浏览器进行刷新,浏览器刷新的是最后一次请求,即提交表单的请求, //此时多次刷新浏览器,那么就会请求多次,就会执行多次Servlet, //就会多次连接数据库插入数据,导致数据重复插入 //request.getRequestDispatcher("/success.html").forward(request,response); //2. 重定向 //服务器返回重定向的地址(success.html),浏览器就会请求新的地址, //一共有两次请求:提交表单的请求和重定向的请求 //此时如果浏览器多次刷新,那么请求的也是重定向的success.html静态页面, //不会因为刷新而导致多次提交表单 response.sendRedirect(request.getContextPath() "/success.html"); } } },

栏目热文

servlet查询成功跳转界面(servlet怎么返回页面)

servlet查询成功跳转界面(servlet怎么返回页面)

成果图我们完成的就是下面的项目!搭建配置环境配置Tomcat导入开发包建立开发用到的程序包在数据库创建相对应的表开发DA...

2024-01-15 22:06:26查看全文 >>

servlet跳转至页面路径(servlet跳转页面失败是什么原因)

servlet跳转至页面路径(servlet跳转页面失败是什么原因)

前言一般来说当我们在登录页面填写信息提交后,会有相应的Servlet获取,与数据库中已有的信息进行比对,若有,则不会直接...

2024-01-15 21:53:12查看全文 >>

servlet 跳转到另一个servlet(servlet为什么要跳转)

servlet 跳转到另一个servlet(servlet为什么要跳转)

请求转发@Override protected void doGet(HttpServletRequest req, H...

2024-01-15 21:50:10查看全文 >>

servlet跳转到jsp路径怎么写(怎么把servlet数据传到jsp)

servlet跳转到jsp路径怎么写(怎么把servlet数据传到jsp)

有时候我们在跳转的时候不想经过 action,想直接在jsp与jsp之间进行跳转。一、两个jsp均在WebRoot下 ...

2024-01-15 21:39:19查看全文 >>

如何用万能充电器充12伏电瓶(48伏充电器怎么给12伏电瓶充电)

如何用万能充电器充12伏电瓶(48伏充电器怎么给12伏电瓶充电)

在如今这个手机、平板和电脑无处不在的时代,充电器成为了不可或缺的重要物品,为我们的数码产品提供持续的能量支持。对于那些经...

2024-01-15 22:08:27查看全文 >>

servlet中怎么跳转页面(怎样使servlet在网页中显示)

servlet中怎么跳转页面(怎样使servlet在网页中显示)

SpringBootspringboot的目的是为了简化spring应用的开发搭建以及开发过程。内部使用了特殊的处理,使...

2024-01-15 21:51:38查看全文 >>

servlet页面跳转的几种方式(servlet为什么要跳转)

servlet页面跳转的几种方式(servlet为什么要跳转)

转发和重定向的页面跳转方式页面跳转方式,本质上只有2种方式:转发 重定向但在SpringMVC的具体实现上,转发可以...

2024-01-15 22:24:38查看全文 >>

编写好的servlet如何在网页上打开(servlet怎么运行)

编写好的servlet如何在网页上打开(servlet怎么运行)

基本分层思路是已经完成查询所有新闻的方法在DAO中最后将数据返回现在我们去service中完成代码,先准备一个接口编写一...

2024-01-15 22:12:29查看全文 >>

servlet的跳转有哪两种(servlet为什么要跳转)

servlet的跳转有哪两种(servlet为什么要跳转)

1.TCP和UDP的区别TCP是面向连接的,UDP是面向无连接的;TCP只能一对一通信,UDP支持一对一,一对多,多对一...

2024-01-15 21:45:02查看全文 >>

实现servlet有几种方法(servlet各个方法的作用)

实现servlet有几种方法(servlet各个方法的作用)

1、什么是 servlet?  JAVA Servlet 是运行在 Web 服务器或应用服务器上的程序,它是作为来自 W...

2024-01-15 22:29:38查看全文 >>

文档排行