JSP中如何把一个页面的信息传递到另一个页面来
前言:
在做项目的某些特定的情况下,我们需要把这个页面的数据传递到另外一个页面来,在到后端来进行操作;那又哪些方法来实现呢?哪个方法是最好的呢?
方法:
方法一: location后面加值:
这可能是我们最容易想到到,也算是最简单的;只需要在我们超链接的地址后面在加上我们需要的值就行了;但是:这个再地址栏后面添加信息的大小是有限制的,并且在另外一个页面取值的时候需要对地址栏的字符串信息进行多次分割,这是非常麻烦和繁琐的;
方法二:通过form表单的形式提交过去,再获取值(*推荐);
把form表单数据隐藏,全部一起传递到下一个页面,另一个页面可以通过jstl中的${param.属性}得到值;如果把前端信息放在了WEB-INF文件夹中的话,就不能直接访问,所以还需要把数据先传递到后台的contro层,在放在rquest/modle域中,在跳转到另一个页面,通过jstl拿到值;
a.jsp:
<%--
Created by IntelliJ IDEA.
User: Administrator
Date: 2021-04-17
Time: 10:12
To change this template use File | Settings | File Templates.
--%>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt" %>
<html>
<head>
<title>员工信息表</title>
<script>
function update(id,name,eamil,birth,createTime,department) {
document.forms[0].elements[0].value=id;
document.forms[0].elements[1].value=name;
document.forms[0].elements[2].value=eamil;
document.forms[0].elements[3].value=birth;
document.forms[0].elements[4].value=createTime;
document.forms[0].elements[5].value=department;
document.forms[0].action='<c:url value="/emplo/upd"/>';
document.forms[0].submit();
}
</script>
</head>
<body>
<form method="post">