EL表达式定义:简单的一套运算规则,并且可以给JSTL标签赋值,也可以用来脱离标签传输数据,web服务器处理请求参数的调用后,本质是一个String,但是有时候我们需要进行转化,el表达式直接获取对应的数据类型
常见的写法: $ { }
<h1>加法: ${1+1} </h1>
<h2>加法: ${"123"+"55"}</h2>
<h3>加法: ${"100"+ 20}</h3>
<h4>减法: ${"120"- 1}</h4>
<h5>比较: ${"120" == 150}</h5>
<h6>比较: ${"120" eq 120}</h6>
<h5>比较: ${"120" lt 10}</h5>
<h5>比较: ${"120" gt 10}</h5>
<h5>比较: ${"65" eq 'a'}</h5>
Servlet执行效果
el中只能运算不能拼接
@WebServlet("/myel")
public class ELServlet extends HttpServlet {
@Override
protected void service(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
req.setCharacterEncoding("utf-8");
resp.setContentType("text/html;char=utf-8");
//构建对象
User u1=new User(1,"浪子燕青","123456");
User u2=new User(2,"玉麒麟卢俊义","123456");
List<User> list=new ArrayList<>();
list.add(u1);
list.add(u2);
User[] us={u1,u2};
//绑定数据
req.setAttribute("u1",u1);//对象
req.setAttribute("us",us);//数组
req.setAttribute("list",list);//集合
//转发getRequestDispatcher
req.getRequestDispatcher("ELTest.jsp").forward(req,resp);
}
JSP:
<h4>姓名:${u1.username}</h4>
<h4>密码:${u1.pwd}</h4>
<h3>-----数组-----</h3>
<h4>数组 us[1]:${us[1]}</h4>
<h3>-----集合-----</h3>
<h4>集合 list.get(0):${list.get(0)}</h4>
执行效果: