构建后续赋值上下文

简介: 默认构建时以形参value生成一组上下文;若取别名,则额外构建别名为value的一组,支持后续yaml汉化。因此,默认上下文数为形参个数×1,有别名时为形参个数×2。

● 没取别名,默认构建一组:形参:value
● 取别名,另构建一组:别名:value(后续yaml能汉化使用也是基于此)
● 所以默认构建的上下文数量 = 形参个数 1,有别名 = 形参个数 2

相关文章
|
2月前
|
XML Java 数据库连接
引入MybatisPlus的起步依赖
MyBatisPlus官方提供了一站式Starter,集成MyBatis与MyBatisPlus全部功能,支持自动装配,可直接替代原生MyBatis依赖。引入`mybatis-plus-boot-starter`后,无需额外配置,简化开发流程,原MyBatis依赖可移除,提升效率。
|
2月前
|
存储 JSON NoSQL
数据模型
MongoDB以文档为最小存储单位,采用BSON(Binary JSON)格式存储数据。BSON支持字符串、数组、对象及Date、ObjectId、二进制等扩展类型,兼具灵活性与高效性,适合存储结构化与非结构化数据,但空间利用率较低。
|
2月前
|
存储 NoSQL 定位技术
MongoDB的特点
MongoDB是一款高性能、高可用、高扩展的NoSQL数据库,支持嵌入式数据模型与多种存储引擎,提供索引优化、自动故障转移、分片扩展及丰富查询功能,适用于海量数据存储与O2O等多样化应用场景。
实体构建
User类用于表示用户基本信息,包含姓名、年龄、性别、身高和体重字段,各属性通过@QLAlias注解定义中文别名,便于数据查询与展示,结构清晰,易于扩展与使用。
|
2月前
|
Java Spring 容器
接口定义
该类为用户管理实现类,通过@Service注解声明为Spring容器管理的Bean。其中isAdult和calculate方法分别用于判断用户是否成年及计算BMI结果,均使用@QLRule注解标记为规则方法,并通过@QLAlias指定参数别名,实际逻辑由规则引擎触发执行。
脚本编写
表达式规则维护在YAML文件中,默认扫描classpath*:/rules/**/*.yaml路径下的配置,如user.yaml。支持条件判断与复杂逻辑处理,如年龄校验、BMI计算并返回结果信息。
获取原始脚本,参数
QLRule中value支持缺省值,对应YAML中key为ruleCode;默认读取路径为com.c2f.boot.starter.rule.engine.QLExpressProperties;原始脚本由String rule获取,用于构建AST语法树。
定义User
该类为用户实体类,包含用户ID和姓名属性。通过Lombok注解简化代码,自动生成getter、setter、toString及构造方法,提升开发效率,适用于数据封装与传输场景。(236字符)
定义UserDAO
UserDao 是一个用户数据访问组件,提供根据ID查找用户的方法。当ID大于10时返回null,否则返回对应用户对象,用于模拟简单用户查询逻辑。
|
2月前
|
Java Spring
定义UserService
该服务类通过构造注入UserDao,提供根据ID查询用户的功能,实现业务逻辑与数据访问的解耦,符合Spring推荐的依赖注入设计原则。(136字)