EL表达式语言

一、概述
  EL表达式是在JSTL1.0规范中引入进来,是从JavaScript脚本语言中得到启发,借鉴了JavaScript多类型转换无关性特点。在MVC体现中JSP页面用来显示数据,但JSP脚本中表达式不够强大,不能对隐式中的某对象的属性进行显示,必须配合Scriptlet代码段才能显示数据,如果在JSP中使用EL表达式将简化JSP页面中的Java代码,易于维护。


二、EL表达式使用

1、语法

${expression}

2、使用点号标记法访问JavaBean中的属性

语法:

${mybean.accName}
示例:

<body>
<%
 UserEntity user = new UserEntity();
 user.setUid(1001);
 user.setName("胡歌");
 user.setSex("男");
 user.setAge(21);
 //将javabean中设置的数据保存到request中,然后通过user.获取属性
 request.setAttribute("user", user);
%>
使用El表达式访问javabean中的对象:
<br> 编号:${user.uid}
<br> 姓名:${user.name}
<br> 性别:${user.sex}
<br> 年龄:${user.age}
</body>
3、EL隐式对象
3.1.使用请求参数param访问EL隐式对象并显示在JSP页面上

<form action="show.jsp" method="post">
  姓名:<input type="text" name="sname" /> <br>
  性别:<input type="text" name="usex" /> <br>
  年龄:<input type="text" name="uage" /> <br>
  <input type="submit" value="提交" />
</form>
<body>
<br> 姓名:${param.nnn}
<br> 性别:${param.usex}
<br> 年龄:${param.uage }
</body>

3.2.访问request.session.application作用域对象

 将用户信息分别保存request.session.application作用域对象,通过使用requserScope、ssesionScope、applicationScope中的El隐式对象取出用户数据并显示;

<span style="font-size:14px;">// 获取用户姓名并转码
String name = new String(request.getParameter("name").getBytes("ISO-8859-1"), "utf-8");;
// 获取帐号
String username = new String(request.getParameter("username").getBytes("ISO-8859-1"), "utf-8");
// 获取密码
String password = request.getParameter("password");
// 获取家庭住址
String address = request.getParameter("address");
// 获取联系方式
String iphone =request.getParameter("iphone");

// 将获取的用户姓名保存到request对象中
request.setAttribute("name", name);	
// 将获取的账号与密码保存到session中
HttpSession session = request.getSession();
session.setAttribute("username", username);
session.setAttribute("password", password);	
//将获取用户的家庭住址与联系方式保存在application对象中
ServletContext application=getServletContext();
application.setAttribute("address", address);
application.setAttribute("iphone", iphone);</span></span>
使用El表达式获取用户信息并显示在JSP页面当中:
使用EL表达式获取request对象中的数据:${requestScope.name}<br>
使用EL表达式获取session对象中的数据:${sessionScope.username}<br>
使用EL表达式获取request对象中的数据:${applicationScope.iphone}<br>

 







你可能感兴趣的:(EL表达式语言)