十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
Java Web中的两种跳转语句是什么,有什么区别
成都创新互联公司一直秉承“诚信做人,踏实做事”的原则,不欺瞒客户,是我们最起码的底线! 以服务为基础,以质量求生存,以技术求发展,成交一个客户多一个朋友!为您提供成都网站建设、成都网站制作、成都网页设计、微信小程序开发、成都网站开发、成都网站制作、成都软件开发、重庆APP开发公司是成都本地专业的网站建设和网站设计公司,等你一起来见证!
在JSP中,跳转页面有两种方式:1.forward跳转: 2.response跳转:response.sendRedirect("跳转页面地址");两种跳转的区别如下:1.forward跳转:a.服务器端跳转,地址栏不改变;b.执行到跳转语句后马上无条件跳转,之后的代码不再执行(跳转之前一定要释放全部资源);c.request设置的属性在跳转后的页面仍可以使用;d.使用 传递参数。2.response跳转:a.客户端跳转,地址栏改变;b.所有代码执行完毕后跳转;c.跳转后的页面不能使用上一个页面的request属性;d.使用地址重写传递参数(response.sendRedirect("URL?参数名=参数值"))。
在java web开发中,凡是能实现页面跳转的方法有哪些?具体列出这些方法的实现语句
一、跳转到新页面,并且是在新窗口中打开页面:
function openHtml
{
//do someghing here...
window.open("xxxx.");
}
window是一个javascript对象,可以用它的open方法,需要注意的是,如果这个页面不是一相相对路径,那么要加“://”,比如:
function openHtml
{
window.open("[baidu]");
}
二、在本页面窗口中跳转:
function totest2
{
window.location.assign("test2.");
}
如果直接使用location.assgin也可以,但是window.location.assign更合理一些,当前窗口的location对象的assign方法。
另外,location对象还有一个方法replace也可以做页面跳转,它跟assign方法的区别在于:
replace 方法不会在 History 对象中生成一个新的纪录。当使用该方法时,新的 URL 将覆盖 History 对象中的当前纪录。
跳转的几种方法
页面跳转如果不是在程序里面的话都是通过a标签链接跳转的,而且a标签的跳转方式有
_blank是最常见的链接方式,表示超链接的目标地址在新建窗口中打开;
_self表示“相同窗口”。点击链接后,地址栏不变;
_top表示整页窗口;
_parent表示父窗口。
javaweb,请问,我在severlet里面执行了这个response.sendRedirect跳转语句,是不是下面的语句就没用了?
response.sendRedirect
重定向本质是两次请求,附带的参数会丢失,但是看你程序是从session里取数据,所以在本次会话内,你的数据有效,questions能正常取到数据,下面显示会正常。如果是request 作用域内,就会取不到。
网页能够自己判断是pc端首页还是手机端的首页,并自动跳转,代码详细点,多谢各位大神
//腾讯网的适配代码
//其他的适配代码(后缀名为.js 并引用至网页)
jsp怎么跳转到servlet
JSP跳转到Servlet:
1. 注意,这里的url不能直接写你的servlet名称,而要填写web.xml里该servlet的url-pattern,即“/xxxServlet"形式。有斜杠,斜杠,杠。另外,这种方式直接跳走了,在servlet里写上跳转回原页面的语句,就会报错java.io.IOException: Stream closed。
2. 同上,url有斜杠。这种方式的好处是servlet里不用写跳转语句,会自动回到原来页面,因为这是一个动态包含文件命令。另外,该方式还能传递多个参数,你懂的。
3.借助javascript.如
Servlet跳转到JSP
1.response.sendRedirect("URL")跳转后浏览器地址栏变化。可以将页面跳转到任何页面,不一定局限于本web应用中。
这种方式要传值出去的话,只能在url中带parameter或者放在session中,无法使用request.setAttribute来传递。
2.request.getRequestDispatcher("/a.jsp")。dispatcher .forward(request, response);
Servlet页面跳转的路径是相对路径。forward方式只能跳转到本web应用中的页面上。跳转后浏览器地址栏不会变化。
使用这种方式跳转,传值可以使用三种方法:url中带parameter,session,request.setAttribute
如何从一个JSP页面中跳到另一个JSP页面呢?
你可以在jsp页面使用超链接标签 例如 点击我跳转
也可以在后台servlet中使用 重定向 例如 response.sendRedirect("xxx.jsp");
也可以使用转发 例如 request.getRequestDispatcher("xxx.jsp").forward(request.response);
标签:作文经典 上一篇:昆明的诗句 写昆明的诗句 下一篇:偶尔的近义词反义词 偶尔的反义词
java实现的简单登录页面,从一个按钮点击后跳转的页面的jframe写法:
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
public class jb{
public static void main(String args[]){
JFrame f=new JFrame("点我跳转");
Container contentPane=f.getContentPane();
contentPane.setLayout(new GridLayout(1,2));
Icon icon=new ImageIcon("b.jpg");
JLabel label2=new JLabel("a",icon,JLabel.CENTER);
label2.setHorizontalTextPosition(JLabel.CENTER);
contentPane.setLayout(new FlowLayout( FlowLayout.CENTER,10,10));
JButton bb=new JButton("图片");
bb.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent e){
JFrame bf=new JFrame("新窗体");
Icon icon=new ImageIcon("enter.jpg");
JLabel label2=new JLabel(icon);
bf.getContentPane().add(label2);
bf.setSize(300,360);
bf.show();
}});
contentPane.add(label2);
contentPane.add(bb);
f.pack();
f.show();
}}
说说servlet里面的方法:
public void ValidateUserPass(String user,String pass){
RequestDispathcher rd =null
//假使你的代码是从DB中获取
DBFactory db=DBFactoryImpl.getDBFactoryInstance();//得到数据库链接
flg=db.findUser(user,pass);
// 这里是不存在用户
if(flg.hasNext()==-1){
// 登录时错误了,一般我们会给用户一个提示
session.setAttirbute("msg","对不起,用户名或密码错误");
RequestDispathcher rd = req.getRequesDispatcher("login.jsp");
rd.forward(request, reponse);//将请求对象和响应对象传递进来
} // 这里是存在当前用户
else{
//当然这里登录成功时,我们要把当前用户写到session里面保存
session.setAttirbute("userName",user);
//这个请求转发语句
request.sendRedirect("index.html");
}
}
// * 上述代码,你可以参考下我的方法,我也很久没做JAVA开发了,我现在从事前端UI开发,本来我想在写一个用struts 2登录的程序的,可我现在忘得差不多了,上面我所用到的属性建议你自己好好的研究一下,往后你将学到struts2 hibernate,Spring等一系列优秀的开源框架,说白了,这些东西的底层还是这些,只不过这些框架做了一些封装隔离。上述代码建议你重点理解一下:请求转发和重定向的区别。
window.open(URL,name,features,replace)
描述
URL 一个可选的字符串,声明了要在新窗口中显示的文档的 URL。如果省略了这个参数,或者它的值是空字符串,那么新窗口就不会显示任何文档。
name 一个可选的字符串,该字符串是一个由逗号分隔的特征列表,其中包括数字、字母和下划线,该字符声明了新窗口的名称。这个名称可以用作标记 a 和 form 的属性 target 的值。如果该参数指定了一个已经存在的窗口,那么 open() 方法就不再创建一个新窗口,而只是返回对指定窗口的引用。在这种情况下,features 将被忽略。
features 一个可选的字符串,声明了新窗口要显示的标准浏览器的特征。如果省略该参数,新窗口将具有所有标准特征。在窗口特征这个表格中,我们对该字符串的格式进行了详细的说明。
replace
一个可选的布尔值。规定了装载到窗口的 URL 是在窗口的浏览历史中创建一个新条目,还是替换浏览历史中的当前条目。支持下面的值:
true - URL 替换浏览历史中的当前条目。
false - URL 在浏览历史中创建新的条目。
例子:
script type="text/javascript"
function aa(){
window.open('你自己的页面名称.html','name');
}
/script
input type="button" value="JS打开新页面" onclick="aa()" /
1、直接从web.xml中配置,直接跳转到login.jsp登录界面。
2、从index.jsp界面进行JS跳转。
用java做好的登陆界面,当登陆成功后跳转到下个页面的代码如下:
如果登陆验证是在jsp中,那么跳转可以写成
1.response.sendRedirct("跳转到页面");
2.jsp:forward page="跳转页面"/
3.response.setHeader("Location","");
如果是登陆验证是在servlet中,那么中转可以写成
1.response.sendRedirect("/a.jsp");
2.RequestDispatcher dispatcher = request.getRequestDispatcher("/a.jsp");
dispatcher .forward(request, response);
也可以使用js代码实现:
script
function validate(){
window.location.href="/index.jsp";
}
/script