el表达式的首字母大小写问题
EL表达式获取对象属性的原理是这样的:
以表达式${user.name}为例
EL表达式会根据name去User类里寻找这个name的get方法,此时会自动把name首字母大写并加上get前缀,一旦找到与之匹配的方法,El表达式就会认为这就是要访问的属性,并返回属性的值。
所以,想要通过EL表达式获取对象属性的值,那么这个属性就必须有与之对应的get方法。 所以这中间不关私有属性的事,调用的是私有属性的get/set方法。
如果你不写get/set方法,那EL表达式就拿不到值了。set方法是给你后台设置值用的。
public String getName(){
return "aaaaaaaa";
}
public String getABcccc(){
return "abccccccc";
}
public String getABCD(){
return "ABCD";
}
<br>${name} ---------${Name}会直接报错,el表达式抛出异常,按照下行的结果,当el表达式首字母大写,会判断第二个字母大小写,小写抛异常,大写则直接拼接get,形成getter方法
<br>${ABcccc}--------${aBcccc}不能获取值
<br>${ABCD}
//总结
当el表达式首字母大写,会判断第二个字母大小写,小写,抛异常;大写,则直接拼接get,形成getter方法
当el表达式首字母小写,会判断第二个字母大小写,大写,必须第一个字母大写;否则无法获取值
el首字母大写,至少第二个字母必须大写。
el表达式的首字母大小写问题的更多相关文章
- [Go语言]从Docker源码学习Go——init()方法和identifier首字母大小写区分
init()方法 如果想在一个go文件里,进行一些初始化的工作,可以把代码放到init()方法中. init()方法先被执行. func init() { // initialization of p ...
- java string 首字母大小写方法
String字符串需要进行首字母大小写改写,查询google,就是将首字母截取,转化大小写 + 首字母后面字符串 //首字母小写 public static String captureName(St ...
- ASP.NET Core中返回 json 数据首字母大小写问题
ASP.NET Core中返回 json 数据首字母大小写问题 在asp.net core中使用ajax请求动态绑定数据时遇到该问题 后台返回数据字段首字母为定义的大写,返回的数据没有问题 但是在前台 ...
- 【Golang】字符串首字母大小写转化
写在前面 在自动化过程中,我们用得最多的可能就是字符串的处理,熟悉Python的都知道在Python中要让一个字符串的首字母大写直接用capitalize就可以了,但是同样的事情在Golang中没有这 ...
- ORACLE 判断首字母大小写问题
1.对判断的字段进行拆分 select substr(要区分的字段,0,1) from 表 : 得到一个 首字母 2.对这个字符进行大小写判断 查出以小写字符为开头的 select substr ...
- office-002-onenote、word、outlook取消首字母大小写图文详解
此文主要讲述如何取消微软办公软件 onenote.work.outlook 中首字母大写等的自动更正项,其他 office 办公软件相关设置的操作,可参考此文进行相应的设置.希望能对亲有所帮助,若有错 ...
- Java c# 跨语言Json反序列化首字母大小写问题
C#标准是首字母大写,Java规范是首字母小写,在序列化成Json之后,反序列化会出现反序列化失败的问题.. 从C#反序列化成JavaBean的时候通过如下注解可以直接解决该问题 @JsonNamin ...
- fastjson转换对象,属性首字母大小写的问题
请求Json数据的时候,传递过去的String类型转Json数据的时候经常有首字母是大写的情况,例如"LoginAccount":"02:00:00:62:73:74&q ...
- Spring getBean 首字母大小写问题
如果类第一个字母大写第二个小写,那么首字母小写获取bean 如果第一个和第二个字母都是大写的,那个获取bean首字母要大写
随机推荐
- 设计模式在cocos2d-x中的使用--简单工厂模式(Simple Factory)
什么是简单工厂模式? 从设计模式的类型上来说,简单工厂模式是属于创建型模式,又叫做静态工厂方法(Static Factory Method)模式.通过专门定义一个类来负责创建其它类的实例,被创建的实例 ...
- LR 监控mysql
sapphire的个人空间 中介绍了LoadRunner监控Mysql和Appache进程占用cpu的方法 方法如下: 公司的新产品需要监控Mysql和Appache进程,求高手帮忙总算成功了. 服务 ...
- SQL中的join操作总结(非常好)
1.1.1 摘要 Join是关系型数据库系统的重要操作之一,SQL Server中包含的常用Join:内联接.外联接和交叉联接等.如果我们想在两个或以上的表获取其中从一个表中的行与另一个表中的行匹配的 ...
- ParameterizedThreadStart,ThreadStart的使用,线程Thread传参数
Thread threadWithParam = new Thread(new ParameterizedThreadStart(new ThreadTest().ShowMsg));//thread ...
- LAMP架构二
安装PHP7 1.查看php配置文件信息(phpinfo),php有两个配置文件开发环境和生产环境 [root@localhost php-5.6.30]# /usr/local/php/bin/ph ...
- fs 小计
如果是export 就可以放到b-leg上 如果是set就可以对于a-leg
- mysql启动与关闭
撰于:http://wenku.baidu.com/link?url=QV3mEJWnU4c8VZPjKGxz4A8gSmdjO2HZY7n963UaVx4l_uPKrh16tGxLyqjf5i3MA ...
- thread_CountDownLatch同步计数器
CountDownLatch类是一个同步计数器,构造时传入int参数,该参数就是计数器的初始值,每调用一次countDown()方法,计数器减1,计数器大于0 时,await()方法会阻塞程序继续执行 ...
- java中调用数据库中的存储过程和函数
public static void main(String[] args) { Connection conn =getConnection(url,user, pwd); ...
- 小马哥课堂-统计学-t分布(2)
t分布,随着自由度的增加,而逐渐接近于正态分布 #!/usr/bin/env python3 #-*- coding:utf-8 -*- ############################### ...