问:在项目中有有没有用到OGNL表达式?
答:有,例如#{}
1、什么是OGNL
OGNL(Object-Graph Navigation Language)对象图形导航语言,一种表达式语言。
2、作用
通过OGNL,可以存、取对象的属性和调用对象的方法,遍历对象等等。
获取属性:#{}
获取JavaBean对象:#{属性名}
获取map对象:#{key}
获取简单类型:#{任意简答类型}
3、示例
(1)先声明Employee类和Dept类
class Employee{
String name;
int age;
Dept dept;
}
class Dept{
String name;
}
(2)那么,使用OGNL表达式时:
#{name} :取出来该对象的名字 ;
#{age} : 取出来对象的年龄 ;
#{dept} :取出来对象的部门信息;
#{dept.name}:表示employee对象的dept属性的name属性,就好比是employee.getDept().getName();
4、#{}我使用较多的一个场景,是在mybatis中。mybatis会将该语法进行翻译,①将#{}直接使用?来替换,相当于就是一个SQL模板;②创建一个预编译语句对象;③给占位符设置值。
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/117783.html