我们可以通过Ctx方法传递自定义的上下文变量给对象,Ctx方法其实是一个链式操作方法,该上下文传递进去后仅对当前DB接口对象有效,方法定义如下:

    请求超时控制

    我们来看一个通过上下文变量控制请求超时时间的示例。

    链路跟踪信息

    上下文变量也可以传递链路跟踪信息,并且可以和日志组件结合,将链路信息打印到日志中(仅当日志开启时),具体请参考链路跟踪专题介绍章节:

    模型上下文操作

    模型对象也支持上下文变量的传递,同样也是通过Ctx方法。我们来看一个简单的示例,我们将示例2的例子通过模型操作调整一下。

    其中SHOW FULL COLUMNS FROM `user` ORM组件的数据表字段获取查询,每个表在执行操作之前仅会查询一次并缓存结果到内存中。

    嵌套事务支持

    嵌套事务的支持依赖上下文变量的层级传递,具体请参考章节:ORM事务处理