JSP之EL表达式

5 篇文章 0 订阅

EL(Expression Language)表达式

作用:向浏览器输出域对象中的变量值或者是表达式计算的结果.主要是为了替换jsp表达式.

jsp的核心语法:jsp表达式<%= >和jsp脚本<% %>.

jsp开发原则:尽量在jsp页面中少写甚至不写Java代码.

EL语法:${变量或表达式 }

1)输出基本数据类型变量

 <%
        String name="bighuan";//为了方便测试,还是在jsp脚本中写数据
        //pageContext.setAttribute("username", name);
    	pageContext.setAttribute("username", name,PageContext.REQUEST_SCOPE);
    %>
    jsp表达式:<%=name %><br/>
    
    <%--从四个域中自动搜索:等价于<%=pageContext.findAttribute("username") %>--%>
    EL表达式:${username }<br/>
   <%--从指定域中获取,这样才拿的到 --%>
   从指定域中取出数据:${requestScope.username}
2)输出对象的属性值

 <%--EL表达式输出对象的属性 --%>
   		<%
   			Person person=new Person("bighuan",100);//Person是一个javabean,有name和id两个属性
   			//将对象存入域对象中
   			pageContext.setAttribute("person", person);
   			
   			List<Person> list=new ArrayList();
   			list.add(person);
   			list.add(new Person("erqiu",20));
   			list.add(new Person("tiedan",21));
   			pageContext.setAttribute("list", list);
   			
   			Map<String ,Person> map=new HashMap<String , Person>();
   			map.put("001", person);
   			pageContext.setAttribute("map", map);
   		%>
                        //输出对象的值
   			${person.name }//相当于person.getName(),因此Person类必须是标准的javabean
   			
   			${person.id }
   		<br/>
   		        //获取集合中的数据,相当于list.get(0).getName()...
   			list:${list[0].name }--${list[0].id }	<br/>
   			
                        //获取map中的数据,相当于map.get(key).getName()...
   			map:${map['001'].name }
   			<hr/>
   			<%
   				//判空
   				String str="";
   			pageContext.setAttribute("str", str);
   			%>

                   <%--判断是否为空 --%>
   	   	    ${str==null || str==""}
   	   	    ${empty str }//等价于上面这行代码

总结

在jsp页面中尽量不要使用jsp表达式和jsp脚本,用EL表达式和jsp标签替代.jsp标签?下篇博客会有...


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值