JDBC MyBatis 更新 v2.5.1 版本,支持官方版直接扩展动态 SQL 能力
简单点 开发的方法简单点 繁琐的功能请省略 你有不是个AI
spring data jdbc 扩展 mybatis 动态sql能力
- 官方spring data jdbc原生直接 扩展 mybatis动态sql能力
使用方式和官方教程一样 引入spring-boot-starter-data-jdbc 即可 只需要配置扩展的NamedParameterJdbcTemplate 即可
@Configuration public class MybatisQuerySupportConfig { @Bean public NamedParameterJdbcOperations namedParameterJdbcOperations(DataSource dataSource) { return new MybatisJdbcTemplate(dataSource) {@Override protected Dialect dialect() {return new MySQLDialect();}}; } }
@Query 的ID 是user.md里面ID为queryByUserCode的mybatis sql片段
@Query("user.queryByUserCode") List<UserDTO> queryByUserCode(@Param("userCode") String userCode);
具体使用参考spring-data-jdbc-demo 模块
但是 @Query spring 6(jdk17以上) 以上才支持SPEL 不支持实体参数 通过改代码可以解决(支持mybatis版本的) 但有代码侵入性
无法直接 根据方法名 自动查找sql片段
- 仿spring 6+ jdbcClient实现 更推荐crudClient
- 更推荐自研版本spring data jdbc扩展 mybatis动态sql能力
-
底层 jdbcTemplate 复杂SQL才需要mybatis动态模板能力 无QueryDSL/queryMapper 提供crudClient 和jdbcClient
-
和spring data jdbc一样的追求简单,使用jdbcTemplate,调用jdbc。不提供缓存、延迟加载、QueryDSL等JPA或mybatis的许多特性。一个简单、有限的ORM
-
扩展并兼容mybatis动态sql能力(不依赖mybatis!提取了动态sql代码),可以应对复杂sql,如果换其他模板引擎(后续可以加)也是可以的,但有学习成本
-
复杂的SQL写在Markdown的代码片段中,不提供@Query和QueryDSL写法,但按方法名查找和扩展的findByExample可以应付大部分单表查询需求
-
简化mybatis动态sql写法 easy-dynamic-sql.md
这真是缺点?
- 缺点一:无QueryDSL/QueryWrapper 我是个懒人 既然service层里可以写QueryWrapper 为啥不可以写在service 为啥要重用?
要我独立个dao/Repository把数据层下放?想啥呢?!
我这个框架就只能在dao/Repository层 写确实太麻烦了 复杂的sql还得建个markdown文件 - 缺点二:没有数据缓存 审计 数据脱敏 IService接口 就不能替我做了吗 非得在应用层实现
其实我这给了spring缓存框架等用武之地 自己实现可以增加代码量和工作量 在还没被ai替代之前 薅羊毛

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
Vue 动态表单 FormCreate 3.2 发布,全面适配移动端
FormCreate 是一个可以通过 JSON 生成具有动态渲染、数据收集、验证和提交功能的表单生成组件。支持6个UI框架,适配移动端,并且支持生成任何 Vue 组件。内置20种常用表单组件和自定义组件,再复杂的表单都可以轻松搞定。 帮助文档|源码下载 FormCreate3.2 版本适配了当前流行的vant4.0版本,不仅能帮助您在移动端开发过程中节省大量时间和精力,还能有效提升用户体验和满意度。 特性 使用JSON数据生成表单 支持扩展,生成任何Vue组件和HTML标签 支持6个UI框架 支持组件之间联动 提供丰富的表单操作API 支持子表单和分组 高性能 适配移动端 内置组件 输入框 数字输入框 日历选择 日期选择 时间选择 单选框 多选框 下拉选择框 开关 评分 滑块 上传 分组 子表单 除了适配vant以外还适配以下UI框架 element-plus ant-design-vue naive-ui arco-design tdesign 使用 浏览器 <!-- 引入样式文件 --> <link rel="stylesheet" href="http...
- 下一篇
Apache Doris 2.1.4 版本正式发布
亲爱的社区小伙伴们,Apache Doris 2.1.4 版本已于 2024 年 6 月 26 日正式发布。在 2.1.4 版本中,我们对数据湖分析场景进行了多项功能体验优化,重点修复了旧版本中异常内存占用的问题,同时提交了若干改进项以及问题修复,进一步提升了系统的性能、稳定性及易用性,欢迎大家下载使用。 官网下载页:https://doris.apache.org/download/ GitHub 下载:https://github.com/apache/doris/releases 行为变更 通过 Catalog 查询外部表(如 Hive 数据表)时,系统将忽略不存在的文件:当从元数据缓存中获取文件列表时,由于缓存更新并非实时,因此可能在实际的文件列表已删除、而元数据缓存中仍存在该文件的情况。为了避免由于尝试访问不存在的文件而导致的查询错误,系统会忽略这些不存在的文件。 默认情况下,创建 Bitmap Index 不再默认变更为 Inverted Index。该行为由 FE 配置项 enable_create_bitmap_index_as_inverted_index 控制,默认...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- SpringBoot2整合Thymeleaf,官方推荐html解决方案
- MySQL8.0.19开启GTID主从同步CentOS8
- SpringBoot2更换Tomcat为Jetty,小型站点的福音
- Red5直播服务器,属于Java语言的直播服务器
- CentOS7,8上快速安装Gitea,搭建Git服务器
- CentOS6,7,8上安装Nginx,支持https2.0的开启
- CentOS8,CentOS7,CentOS6编译安装Redis5.0.7
- Jdk安装(Linux,MacOS,Windows),包含三大操作系统的最全安装
- SpringBoot2整合MyBatis,连接MySql数据库做增删改查操作
- SpringBoot2全家桶,快速入门学习开发网站教程