ThinkChat2.0新版上线,更智能更精彩,支持会话、画图、阅读、搜索等,送10W Token,即刻开启你的AI之旅 广告
## Stream查询 对于某些查询,结果集包含大量数据,如果一次性返回,可能导致内存益处,可以使用stream查询 * public <T> StreamData<T> stream(SqlId sqlId, Class<T> clazz, Object paras) 查询sql文件,返回StreamData对象 * public <T> StreamData<T> streamExecute(String sqlTemplate, Class<T> clazz,Object para) 查询sql模板。返回Stream对象 * public <T> StreamData<T> streamExecute(SQLReady p, Class<T> clazz) 直接使用jdbc sql查询 StreamData提供foreach方法,遍历结果 ```java SQLReady sqlReady = new SQLReady("select * from sys_user"); StreamData<User> streamData = sqlManager.streamExecute(sqlReady,User.class); streamData.foreach(user -> { //处理user }); ``` 需要注意的是,必须在事物上下文里遍历streamData,这是因为StreamData已经脱离了BeetlSQL,但包含了jdbc链接用于加载数据,因此期望事物来自动关闭数据库链接