问题发现:
页面使用EL表达式时,获取不到值,明明对象已经存在session中
问题分析:
使用的是oracle数据库,oracle会自动将字段名全部大写,比如:MENU_NAME
JFinal的model继承Model类后,属性名默认自带get方法,但是是针对数据库字段的
即,此时Menu实体类的getMENU_NAME()方法是能正确获取到值的
但是EL表达式不支持首字母大写的属性,因此导致MENU_NAME整个属性并不能够被EL表达式所识别
问题解决:
三种理论方案
一、使用JFinal Generator生成器,生成完整的JAVA BEAN代码,然后在Java Bean中处理
二、给Menu类添加mENU_NAME属性
三、把EL表达式的式子改成menu1.mENU_NAME
三种方法我都未尝试过,因为数据库选择比较自由,直接换了一个库全部用小写字段了
转载请注明原文地址: https://ju.6miu.com/read-676760.html