当前位置: 代码迷 >> Web前端 >> Java Web 胡说八道 之-表达式语言
  详细解决方案

Java Web 胡说八道 之-表达式语言

热度:674   发布时间:2012-10-26 10:30:59.0
Java Web 胡言乱语 之--表达式语言

JSP 2.0 之后提供的一个最主要功能,支持表达式语言操作,如果要想让表达式语言发挥出自己的主要作用,则必须首先考虑的是使用MVC设计模式完成,因为在MVC设计模式中一个最主要的好处就是让JSP中的代码越来越少了,而且已经规定了再JSP之中只能出现三种代码。

?1.接收属性

?2.判断语句

?3.迭代输出

但是,如果在开发之中,有时候做到这一点是很难做到的,在实际的代码开发中已经讲解过了,一个JSP肯定输出的是接收VO对象的,则这个时候为了避免导入VO包,也只能通过表达式完成。

?表达式语言 (Expression Language,简称EL):是JSP2.0中新增的新功能,使用表达式语言,可以方便的访问标志位 (在JSP中一共提供了四种标志位:page<pageContext>,request,session,application)中的属性内容,这样就可以避免掉许多的scriptlet代码,访问的简便语法如下:

? ${属性名称}

?

优点 :如果现在使用表达式语言完成输出的话,可以很好的控制掉null的问题,而且比之前使用Scriptlet代码输出更加的简便,而且使用""代替了null

?

表达式语言的内置对象:

表单可以接收参数,或者通过URL重写传递参数,如果要想接收参数 "param" 对象完成.

<%@ page contentType="text/html" pageEncoding="GBK"%>
<html>
<head>
	<title>www.MLDNJAVA.cn</title>
</head>
<body>

<h3>通过内置对象接收输入参数:<%=request.getParameter("ref")%></h3>
<h3>通过表达式语言接收输入参数:${param.ref}</h3>
</body>
</html>
?

现在只是接收了一个参数,也可以完成一组参数的接收,paramValue

?

<%@ page contentType="text/html" pageEncoding="GBK"%>
<html>
<head>
	<title>www.MLDNJAVA.cn</title>
</head>
<body>
	<%  //正经开发中,此代码要通过过滤器实现
		request.setCharacterEncoding("GBK");
	%>
<h3>第一个参数:${paramValues.inst[0]}</h3>
<h3>第二个参数:${paramValues.inst[1]}</h3>
<h3>第三个参数:${paramValues.inst[2]}</h3>
</body>
</html>

?<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<

EL中集合操作:

?

<%@ page contentType="text/html" pageEncoding="GBK"%>
<%@ page import="java.util.*"%>
<html>
<head>
	<title>www.MLDNJAVA.cn</title>
</head>
<body>
	<%  
     List all = new ArrayList();
	 all.add("李四");
	 all.add("www,baudy,.cin");
	 all.add("www.163.com");
	 request.setAttribute("allinfo",all);
	%>
<h3>第一个元素:${allinfo[0]}</h3>
<h3>第一个元素:${allinfo[1]}</h3>
<h3>第一个元素:${allinfo[2]}</h3>
</body>
</html>
?

此处必须强调的是,以上的代码实际上JSP文件之中,只关心红色的字体部分,其他的部分应该有Servlet完成,

?

<h3>第一个元素:${allinfo[0]}</h3>
<h3>第一个元素:${allinfo[1]}</h3>
<h3>第一个元素:${allinfo[2]}</h3>
<%@ page contentType="text/html" pageEncoding="GBK"%>
<%@ page import="java.util.*"%>
<html>
<head>
	<title>www.MLDNJAVA.cn</title>
</head>
<body>
	<%  
     Map map  =new HashMap();
	 map.put("lxh","李兴华");
	 map.put("mldn","www.mldnjava.cn");
	 map.put("email","fdfdfwe@163.com");
	 request.setAttribute("info",map);
	%>
<h3>KEY为lxh的内容 :${info["lxh"]}</h3>
<h3>KEY为mldn的内容:${info["mldn"]}</h3>
<h3>KEY为email的内容:${info["email"]}</h3>
</body>
</html>
?

JSP优点 : 接收,判断 ,输出

?

>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>

?

EEL中运算符: 三目运算符最需要掌握,

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

?

  相关解决方案