EL 表达式学习中的 几个注意点。

来源:互联网 发布:淘宝号申请注册 编辑:程序博客网 时间:2024/05/20 11:25

 1:屏蔽空引用异常

    在Java程序中,尝试调用 null对象的成员方法会抛出异常,但EL表达式却会返回null值 作为代替,在页面上不会抛出任何异常,而是输出一个空字符串。 

2: 访问list,数组等对象

    对于List类型对象,访问的对象通过List的get(int)方法获 取,其中“[]”内的整数作为该方法的参数。 当指定的下标超出范围时,表达式并不抛出异常,而是返回 null。

我通过做实验发现;

       ${对象1.对象2.对象3}
    (1)在计算过程中,如果对象1是null,则对象2 无论是不是对象1 的属性,都是返回null,不会报任何异常。
 (2)如果对象1不是null, 则对象2 必须是对象1的属性。。否则报异常


public class Person {


private int id;
private String name;
private Address add;
private List<String> list;
       private String sevenRefund;
       。。。。
       getter and setter ()...


test.jsp

<% 
     Person wo=new Person();
     List<String> tt=new ArrayList<String>();
     tt.add("abc000");
     wo.setList(tt);
     wo.setName("abc");
     request.setAttribute("wo",wo);
  %>


  ${wo.list[0]}         ----------->输出abc000
  ${wo.list[4].uyxededxadd1} -----> wo.list[4] is null
  ${wo.b0bk}  -----> 错误 。。。
Property 'b0bk' not found on type com.test.Person 因为wo 不是null

 
 --------8888888888${w1.sevenR22efund}822888888<br>   -->w1 is null
 --------8888888888${wo.sevenRefund}8888888
${wo.bbk} 
 
0 0
原创粉丝点击