1 请求域,有四个域:pageScope,requestScope,sessionScope,applicationScope
范围由小到大
表示变量的作用域,一共4种。
pageScope: 表示变量只能在本页面使用。
requestScope:表示变量能在本次请求中使用。
sessionScope:表示变量能在本次会话中使用。
applicationScope:表示变量能在整个应用程序中使用。
eg:
request:
A --//从页面到后台
jsp: 途径
1 url路径:xxx.action?id=1;
2 ajax
3 form表单
后台:
String accId = getRequest().getParameter("id");
----------------------
B--//从后台到页面
getRequest().setAttribute("id", accId);
jsp:
1
<%
String id = request.getAttribute("id");
%>
2 ${requestScope.id}
放在标签里:
url="${basePath}/allot/listSimInfo.action?accId=${requestScope.id}"
C--不同地方获得后台传过来的参数:
标签:${requestScope.id}
js:
$(function(){
var id = ${sessionScope.PORTAL_ACCOUNT_SESSION_KEY.code};
alert(id);
});
或
$(function(){
var id = <%=id%>;
alert(id);
});
---------------------------------
request.getParameter() 和request.getAttribute() 区别
getParameter 是用来接受用post个get方法传递过来的参数的.
getAttribute 必须先setAttribute.
(1)HttpServletRequest 类有setAttribute()方法,而没有setParameter()方法
(2) 当两个Web组件之间为链接关系时,被链接的组件通过getParameter()方法来获得请求参数,
(3) 当两个Web组件之间为转发关系时,转发目标组件通过getAttribute()方法来和转发源组件共享request范围内的数据。
------------------------------
两种页面跳转方式:
1 重定向
request.sendRedirect("xxx.jsp");
2 跳转
带session,request
request.setAttribute("id","123");
request.getRequestDispatcher().forward();
request.getRequestDispatcher("xxxx.jsp").forward(request, response);
-------------------------
范围由小到大
表示变量的作用域,一共4种。
pageScope: 表示变量只能在本页面使用。
requestScope:表示变量能在本次请求中使用。
sessionScope:表示变量能在本次会话中使用。
applicationScope:表示变量能在整个应用程序中使用。
eg:
request:
A --//从页面到后台
jsp: 途径
1 url路径:xxx.action?id=1;
2 ajax
3 form表单
后台:
String accId = getRequest().getParameter("id");
----------------------
B--//从后台到页面
getRequest().setAttribute("id", accId);
jsp:
1
<%
String id = request.getAttribute("id");
%>
2 ${requestScope.id}
放在标签里:
url="${basePath}/allot/listSimInfo.action?accId=${requestScope.id}"
C--不同地方获得后台传过来的参数:
标签:${requestScope.id}
js:
$(function(){
var id = ${sessionScope.PORTAL_ACCOUNT_SESSION_KEY.code};
alert(id);
});
或
$(function(){
var id = <%=id%>;
alert(id);
});
---------------------------------
request.getParameter() 和request.getAttribute() 区别
getParameter 是用来接受用post个get方法传递过来的参数的.
getAttribute 必须先setAttribute.
(1)HttpServletRequest 类有setAttribute()方法,而没有setParameter()方法
(2) 当两个Web组件之间为链接关系时,被链接的组件通过getParameter()方法来获得请求参数,
(3) 当两个Web组件之间为转发关系时,转发目标组件通过getAttribute()方法来和转发源组件共享request范围内的数据。
------------------------------
两种页面跳转方式:
1 重定向
request.sendRedirect("xxx.jsp");
2 跳转
带session,request
request.setAttribute("id","123");
request.getRequestDispatcher().forward();
request.getRequestDispatcher("xxxx.jsp").forward(request, response);
| 重定向 | 跳转 |
效率 | 高 | 低 |
速度 | 快 | 慢 |
客户端地址栏 | 可见地址栏变化 | 不可见地址栏变化 |
变量变化 | 以前的request中存放的变量全部失效,并进入一个新的request作用域 | 以前的request中存放的变量不会失效, 就像把两个页面拼到了一起 |
-------------------------