
el表达式和Springmvc没关系,el表达式取值必需是servlet四大作用(servletContext>session>request>pageContext)中有的值,这四个域都有setAttribute("",object)方法和getAttribute("")方法 el表达式 会自动从四大域中按作用范围从小到达寻找搜寻对应名字的值,其内部调用的就是pageContext的findAttribute("")方法如果要想在页面通过el表达式得到值就必需先调用域的setAttribute方法把值设置进去,不需要什么配置,直接写el表达式就可以如下代码
<%application.setAttribute("name", "zhangsan")//Context域
session.setAttribute("name", "lisi")//session域
request.setAttribute("name", "wangwu") //request域
pageContext.setAttribute("name", "zhaoliu")//page域
%>
${name }
输出结果是page域中的zhaoliu 如果将page域删掉则输出wangwu 依次类推
哥们 这是javaee基础知识 建议学好基础在整框架 不然只会傻瓜式的复制粘贴 不知道内部工作原理
假如有session属性:session.setAttribute("currentUser","admin")那么在用el表达式输出时这样写:${sessionScope.currentUser}他在页面上就会显示admin
上面这句el表达式的意思是,将session范围的,以currentUser为name的value显示出来
如果存储的value是个类对象,例如:UserVo user = new UserVo() UserVo 中有个属性叫username,还有个叫password,
session.setAttribute("curuser",user)//存储当前登录用户的用户名和密码
取出显示user中的用户名和密码是就是这样写的:
用户名:${sessionScope.curuser.username}
密码:${sessionScope.curuser.password}
这个挺简单的呀,你只要稍为看下书很容易学的。
表单没写action也能用EL表达式获取数据库信息?应该改为:<form
action="/bbsdir.do?method=${bbsdir==null?'save':'update'
}"
method="post">
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)