比较JSP中几种页面跳转方式的异同
使用jsp编程语言设计一个系统,跳转页面也是无可避免的事情,那么在JSP中,到底有哪几种跳转方式?这几种跳转方式中,哪一种才是最好使的呢?如果你想知道答案的话,那就接着往下看咯。今天小编要介绍的教程就是——比较JSP中几种页面跳转方式的异同。
好的,首先小编先为大家解答第一个疑问,在JSP中到底有哪几种跳转方式?答案就是有三种。一般情况下,我们在使用JSP进行编程的时候,大概就有以下三种跳转方式。具体的方式如下:
①response.setHeader(“Location”,””);
②<jsp:forwardpage=””/>
③response.sendRedirect();
经过小编的多次试验以后,终于被小编参透出了一些规则,究竟是些怎样的规则呢?具体参考下面:
第一种跳转方式:response.setHeader(“Location”,””)
首先先为大家介绍第一种跳转方式,在这个JSP语句之前是并不允许有out.flush()语句出现的。假如你不小心加上的话,那么就会出现页面跳转不了的情况。
大家可以看到,当它跳转以后,我们正在使用的浏览器地址栏已经在发生变化了。它的跳转原理就是:在这个语句后面的语句执行结束以后,页面才会发生跳转。
第二种跳转方式:<jsp:forwardpage=””/>
接下来,继续为大家介绍第二种跳转方式。在这个跳转方式中,这个JSP语句之前是并不允许有out.flush()语句出现的。假如你不小心加上的话,那么就出现异常的情况,同样页面也是跳转不了的。具体的异常代码,如下图:
大家可以看到,这种跳转方式和第一种跳转方式并不一样。当它发生跳转以后,浏览器的地址栏是并没有什么变化的,但是仅仅也只可以跳转到当前主机的下面。它的跳转原理和第一种的一样,那就是:在这个语句后面的语句执行结束以后,页面才会发生跳转。
第三种跳转方式:response.sendRedirect()
最后,小编要为大家介绍的第三种跳转方式是——response.sendRedirect()。如同前面两种跳转方式一样,同样在这个JSP语句之前也是不允许有out.flush()的出现。假如你不小心加上的话,那么就出现异常的情况。具体的异常代码,如下图:
如同第一种一样,当它跳转以后,我们正在使用的浏览器地址栏已经在发生变化了。但是假如要跳到不同主机下面,当发生跳转以后,这个JSP语句后面的语句会继续接着执行,就好像新开了线程一样。但是小编想说的是,这就对response的操作已经没有任何的意义了。
小编结语:
大家通过教程可以看到,小编主要是向大家比较JSP中几种页面跳转方式的异同,那么你理解了吗?大家可以根据自己的实际需要来选择适合的跳转方法哟!今天的教程就已经介绍完毕了,如果你还是与犹未尽,可以进入我们的官网课课家教育,了解更多的JSP入门教程。