tiles页面body报错

记录自己的一个错误,之前在数据库没有加上数据的情况下,运行tiles成功,最后加上数据库的数据之后再次运行就不行了一直报错。

这个问题用了我一个晚上加上一个早上,最后终于解决。

原因:因为我的代码中没有使用get和set的方法,于是我的实体类中就没有加上两个实体类的get和set方法,于是el表达式使用student.picture怎么都读取不到。

原理:

在EL中,对一个Bean的某字段进行引用,只需 ${bean.property},当然,这个bean是已经被set到容器中的。

我们从容器中取出以bean为名字的Object,通过Java反射机制知道它的真实类型,然后通过property以javabean规范拼出方法名(首字母大写并加上get前缀),进行调用,一旦找到与之匹配的方法,El表达式就会认为这就是要访问的属性,并返回属性的值。所以,想要通过EL表达式获取对象属性的值,那么这个属性就必须有与之对应的get方法。

就是因为没有加上set和get方法才会有el表达式无法读取属性值。这里记录下我的错误。

posted @ 2019-06-18 11:38  恋晨有徐  阅读(154)  评论(0编辑  收藏  举报