① 为什么jsp可以读取java中的数据
因为jsp本质上就是servlet,提供了访问request、session、context三大域对象,用来对java(姑且认为你说的是controller层)与jsp(页面)之间的数据交互。
reqest:
在jsp页面中,在java脚本片段中可以用request.getattribute("xx")获取servlet转发时候传过来的参数。因为转发属于同一次请求。一次请求的参数会存在request域中。你可以这样去取。
如果是重复定向,你可以拼接参数,jsp页面用request.getparameter()可以去取。
session:
只要你在java程序中声明,在jsp页面中,java脚本片段中可以用request.getsession("xx"),就可以获取取。无论是转发还是重定向。因为session的作用在本次会话
context
即applicationContext作用域,作用于整个网站。一般不用
你使用el表达式${xx},其实就是request.getattribute("xx")或request.getsession("xx"),只是jsp给你封装了。不用你这么麻烦的去写
② jsp中的java代码传参
可以!
你就是想灵活一点的从jsp页面获取后台java代码中设置的参数值,这个完全可以啊!
var usernameValue = '<%=request.getSession().getAttribute(str)%>';
这段相当于函数调用嘛,然后返回值赋值给变量,str 其实就是传过去的参数,和直接写成“username” 没有区别,不过不要加“”号,不然结果就是“”username“” 了当然取不到值咯。
--希望对你有帮助!!
③ jsp调用java并传参数
如果不用Servlet或者诸如Struts这类框架来做后台处理的话,你完全可以在JSP文件里直接写Java代码来处理。<%String pp=request.getParameter("pp"); //表单提交上来的参数//直接调用smgp的API%>
④ jsp页面java代码如何获取本页面的参数
假设这JSP叫index.jsp,自己提交给自己.
<%@pagelanguage="java"contentType="text/html;charset=UTF-8"
pageEncoding="UTF-8"%>
<html>
<body>
<formid="test"method="post"action="index.jsp">
<selectid="code"name="plugin">
<optionvalue="1cn">cn</option>
<optionvalue="2us">us</option>
<optionvalue="3en">en</option>
</select>
<inputtype="submit"value="提交">
<br>
<%out.println(request.getParameter("plugin"));%>
</form>
</body>
</html>
请采纳.
⑤ Java怎么向JSP传递多个参数
可以把参数存到 会话中,看情况存到那里,比如request.setAttribute("msg",“你好”) ;
只要存到九大隐式对象里都可以。
JSP 通过 九大隐式对象取数据就是了 如: ${requestScope.msg} 取出就是: 你好
九大隐式对象(page,request,response,out,session,application,config,pageContext,exception)
⑥ java中jsp怎么获取地址栏上的参数
jsp获取地址栏上的参数有如下几种办法:
1、使用jsp小脚本实现
<%
String value=request.getParameter("key");
%>
即可取出地址栏传递的key所代表的值
2、使用EL表达式实现
<h2>${param.key}</h2>
也可以取出地址栏传递的key所代表的值
3、使用javascript实现
<script type="text/javascript">
function GetQueryString(name)
{
var reg = new RegExp("(^|&)"+ name +"=([^&]*)(&|$)");
var r = window.location.search.substr(1).match(reg);
if(r!=null)return unescape(r[2]); return null;
}
var myurl=GetQueryString("key");
</script>
也可以取出地址栏传递的key所代表的值
4、jQuery扩展方法实现
jquery扩展了一个getUrlParam()方法
<script type="text/javascript" src="js/jquery.1.8.3.min.js"></script>
<script type="text/javascript">
$(function($){
$.getUrlParam = function(name)
{
var reg = new RegExp("(^|&)"+name +"=([^&]*)(&|$)");
var r= window.location.search.substr(1).match(reg);
if (r!=null) return unescape(r[2]); return null;
}
});
$.getUrlParam('key');也可以取出地址栏传递的key所代表的值
</script>
⑦ jsp怎么获取java参数
jsp在页面上获取java参数总共有以下方法:
(1)直接在URL请求后添加
如:<a href="thexuan.jsp?action=transparams&detail=directe")直接传递参数, 特别的在使用response.sendRedirect做页面转向的时候,也可以用如下代码: response.sendRedirect("thexuan.jsp?action=transparams&detail=directe") ,可用request.getParameter(name)取得参数
(2)jsp:param
它可以实现主页面向包含页面传递参数,如下:
<jsp:include page="Relative URL">
<jsp:param name="param name" value="paramvalue" />
</jsp:include>
还可以实现在使用jsp:forward动作做页面跳转时传递参数,如下:
<jsp:forward page="Relative URL">
<jsp:param name="paramname" value="paramvalue" />
</jsp:forward> 通过这种方式和一般的表单参数一样的,也可以通过request.getParameter(name)取得参数
(3)设置session和request
通过显示的把参数放置到session和request中,以达到传递参数的目的
session.setAttribute(name,value);
request.setAttribute(name,value)
取参数:value=(value className)session.getAttribute(name);
value=(value className)request.getAttribute(name);
⑧ java页面怎么取得jsp页面的值
jsp在页面上获取java参数总共有以下方法:
(1)直接在URL请求后添加
如:<a href="thexuan.jsp?action=transparams&detail=directe")直接传递参数, 特别的在使用response.sendRedirect做页面转向的时候,也可以用如下代码: response.sendRedirect("thexuan.jsp?action=transparams&detail=directe") ,可用request.getParameter(name)取得参数
(2)jsp:param
它可以实现主页面向包含页面传递参数,如下:
还可以实现在使用jsp:forward动作做页面跳转时传递参数,如下:
通过这种方式和一般的表单参数一样的,也可以通过request.getParameter(name)取得参数
(3)设置session和request
通过显示的把参数放置到session和request中,以达到传递参数的目的
session.setAttribute(name,value);
request.setAttribute(name,value)
取参数:value=(value className)session.getAttribute(name);
value=(value className)request.getAttribute(name);