2024-04-03
|
ZH
8.7.1及之前的版本默认基于spring 8.7.2及之后的版本需要区分运行环境,目前支持: Java(默认支持) Spring Solon Vertx 主要的区别只是类加载机制不同,核心代码都是一样的,对项目代码没有影响 如果是纯java环境,
2024-04-12
|
ZH
有些查询比较频繁又不经常变动的数据,如首页热点、类别下拉列表等数据可以放在缓存中 service.caches("缓存配置key", "表", "查询条件") caches与querys参数完全一致,只是最前面多了一个key,就是配置文件中缓存的key,如以下的status_1800 caches返
2024-04-13
|
ZH
线程内事务 应用内事务(跨线程、跨会话) 跨应用事务 分布式事务 默认的事务是基于线程变量实现的, 8.7.2及之后开始支持跨线程事务,在整个应用内有效。 应用场景: 开启或提交事务 与 数据库不在同一线程内 如果依赖了a
2024-04-13
|
ZH
与线程内事务不同的是,事务信息保存在一个全局mpa变量中(ApplicationConnectionHolder) 在启动事务时,需要设置事务有效范围TransactionDefine.MODE.APPLICATION 并提供事务ID(也可以随机生成)这个ID需要与其他纯种共用,所以一般根据业务主
2024-04-18
|
ZH
未注入EnvironmentWorker,基础Java环境调用DefaultEnvironmentWorker.start()其他环境添加依赖如:anyline-environment-spring-data-jdbc 因为8.7.2后区分了运行环境 具体支持的环境参考https://gitee.c
2024-04-20
|
ZH
有些情况下从数据库中查出结果集后还需要经过多次过滤,用来避免多次查询给数据库造成不必要的压力 DataSet类似sql的查询 DataSet set = new DataSet(); 以DataSet result = set.select.equals("AGE","20", "NAME","张%
2024-04-29
|
ZH
8.7.2之后需要等上下文全部加载完成后,才注册数据源,runtime,service等 如果通过注解注入需要添加一个@Lazy注解 或者AnylineService service = ServiceProxy.service("数据源名称") 如果只有一个数据源可以直接调用ServiceProx
2024-04-30
|
ZH
通常情况下系统运行时可以根据数据源的一些特征识别出当前数据库的类型,从而定位到适合当前数据库的DriverAdapter(adapter用来处理数据方言)可以用于识别的特征主要是jdbc协议名称,如jdbc:mysql jdbc:postgresql但有许多数据库没有自己的协议直接用了mysql或p
2024-05-10
|
ZH
Table table = Table.from(Employee.class); service.ddl().create(table); //如果只生成SQL不需要执行 table.execute(false); service.ddl().create(table); Syste