EL表达式总结

问题1:javaWEB使用El表达式报错问题,属性未找到javax.el.PropertyNotFoundException

          -------------------------------描述-------------------------------------

今天在做web练习的时候,在用el取值的时候报错,用${lu[0].FictionName}后台报错,

lu:一个list对象集合的名字

FictionName:类的一个属性名

编译器没有报错,而且确定自己也咩有什么逻辑错误(毕竟小题目没什么逻辑可言),但是运行就是报错------ javax.el.PropertyNotFoundException

        --------------------------------解决措施------------------------------------

首先我们需要了解的El表达式的运行机制:

    el表达式在你获取对象时,自动把你的属性名转换成字符串,并把首字母大写,进行拼接("get"+属性名),然后通过反射的方式获取 到get方法,返回属性值。实际上就是调用了一遍JavaBean里面的某属性的get函数。

    但是这儿比较鸡肋是,即使你的类属性 首字母是大写,你在调用的时候还是要写成小写格式。

也就是我今天遇到的问题所在:

      我的bean的一个属性叫做“FictionName”,但是我在使用EL表达式还是得写成${lu[0].fictionName}才能调用成功!



问题2:解决:lu是list对象集合:

${str.fictionChapter }

        items的内容是EL表达式

你可能感兴趣的:(EL表达式总结)