当前位置: 首页 > news >正文

net域名网站推广之家app下载

net域名网站,推广之家app下载,北流网站,网站遇到攻击时应该怎么做介绍 OGNL生来就是为了简化Java属性的取值#xff0c;比如想根据名称name引用当前上下文环境中的对象#xff0c;则直接键入即可#xff0c;如果想要引用当前上下文环境中对象text的属性title#xff0c;则键入text.title即可。如果想引用对象的非值属性#xff0c;OGNL也…介绍 OGNL生来就是为了简化Java属性的取值比如想根据名称name引用当前上下文环境中的对象则直接键入即可如果想要引用当前上下文环境中对象text的属性title则键入text.title即可。如果想引用对象的非值属性OGNL也是支持的 属性类型 举例 属性名称 比如上文中的name 属性方法 hashcode()返回当前对象的哈希值 数组索引 arrays\[0\]返回返回arrays数组的第一个元素 OGNL表达式用于用于访问对象的字段、方法。所以我们在使用OGNL表达式的时候需要一个对象这在OGNL表达式中被称为root对象以此来声明由哪个对象来执行这个表达式返回结果。所有的OGNL表达式都在一个特定的数据环境中运行。OGNL的上下文环境是一个Map结构称之为OgnlContext。Root对象也会被添加到上下文环境当中。 依赖引入 dependencygroupIdognl/groupIdartifactIdognl/artifactIdversion3.4.1/version /dependency OGNL三要素 表达式Expression 表达式是整个 OGNL 的核心内容所有的 OGNL 操作都是针对表达式解析后进行的。通过表达式来告诉 OGNL 操作到底要干些什么。因此表达式其实是一个带有语法含义的字符串整个字符串将规定操作的类型和内容。OGNL 表达式支持大量的表达式如 “链式访问对象”、表达式计算、甚至还支持 Lambda 表达式。 Root 对象 OGNL 的 Root 对象可以理解为 OGNL 的操作对象。当我们指定了一个表达式的时候我们需要指定这个表达式针对的是哪个具体的对象。而这个具体的对象就是 Root 对象这就意味着如果有一个 OGNL 表达式那么我们需要针对 Root 对象来进行 OGNL 表达式的计算并且返回结果。 上下文环境 有个 Root 对象和表达式我们就可以使用 OGNL 进行简单的操作了如对 Root 对象的赋值与取值操作。但是实际上在 OGNL 的内部所有的操作都会在一个特定的数据环境中运行。这个数据环境就是上下文环境Context。OGNL 的上下文环境是一个 Map 结构称之为 OgnlContext。Root 对象也会被添加到上下文环境当中去。 说白了上下文就是一个 MAP 结构它实现了 java.utils.Map 的接口。 使用 Ognl 假设有一个User类包含用户的姓名和年龄以及一个Address类用于表示用户的地址。通过OGNL表达式我们可以访问和修改这些属性。 public class User {private String name;private int age;private Address address;public User(String name, int age, Address address) {this.name name;this.age age;this.address address;} } 在这里我们假设使用OGNL库来解析和执行表达式。可以用Ognl.parseExpression解析表达式用Ognl.getValue获取值或用Ognl.setValue设置值。 import ognl.Ognl; import ognl.OgnlContext; import ognl.OgnlException;public class OgnlExample {public static void main(String[] args) throws OgnlException {// 创建用户对象Address address new Address(New York, 5th Avenue);User user new User(Alice, 25, address);// 创建OGNL上下文OgnlContext context new OgnlContext();context.put(user, user); // 将对象放入上下文context.setRoot(user); // 设置根对象// 获取用户的名称Object nameExpr Ognl.parseExpression(name);String name (String) Ognl.getValue(nameExpr, context, user);System.out.println(Users name: name); // 输出 Users name: Alice// 获取用户的城市Object cityExpr Ognl.parseExpression(address.city);String city (String) Ognl.getValue(cityExpr, context, user);System.out.println(Users city: city); // 输出 Users city: New York// 修改用户的年龄Object ageExpr Ognl.parseExpression(age);Ognl.setValue(ageExpr, context, user, 30);System.out.println(Users new age: user.getAge()); // 输出 Users new age: 30// 条件判断Object isAdultExpr Ognl.parseExpression(age 18 ? Adult : Minor);String isAdult (String) Ognl.getValue(isAdultExpr, context, user);System.out.println(User is an: isAdult); // 输出 User is an: Adult} }
http://www.ho-use.cn/article/10819139.html

相关文章:

  • 购买网站模板wordpress实现代码块
  • 详谈电商网站建设四大流程饲料网站源码
  • 连云港建设网站wordpress换行代码
  • 电子商务网站建设的一般流程是电子商务公司企业简介
  • 建站宝盒全能版自助云商城
  • 做网站全包php做二手商城网站源码
  • 创建网站的价格龙岩网红桥
  • 做进口货的电商网站网站建设demo
  • 做一个网站赚钱吗wordpress虚拟商场
  • 天猫网站建设的目标是什么意思网站设计需要考虑哪些基本原则
  • 化妆品网站开发软件设计思路
  • 建设银行网站用户密码找回咨询类网站模板
  • 服务网站建设刷东西网站建设
  • 能不能自己做视频网站余姚做网站设计的
  • x域名免费网站网站开发培训学费
  • 如何做2级网站设计logo的理念
  • 鹿寨县建设局网站与网站设计相关的软件主要有
  • 沈阳做网站优化保定网站公司那家好
  • 市体育局网站 两学一做微信商城网站案例展示
  • php网站建设系统代码交易网站
  • 上海建设网站浦东新区污水管网工程网站怎样做 文件签收
  • 天津市城市建设学校官方网站网站建设动画教程
  • 微信网站怎么做的好处上海网站设计制作公司
  • 网站交互主要做什么申请公司注册需要什么材料
  • 数据网站怎么做的宠物网站页面设计创意国外
  • 国外网站域名备案传奇辅助网站怎么建设
  • 上海 企矩 网站建设怎么给企业做推广
  • 安徽专业网站建设创新用flash做的网站
  • seddog站长之家学校网站开发实际意义
  • 柳州做网站公司wordpress友链代码