Spring Boot 怎样集成 MyBatis?
查看完整题解
参考回答
直接回答
选择与Boot代际匹配的MyBatis starter,配置DataSource,注册Mapper接口及SQL映射,再由服务层组织事务。官方兼容表中starter4.0对应Boot4.0+,不能将旧3.x组合直接视作4.1.2已兼容。框架减少会话管理代码,但SQL正确性、映射与连接配置仍由应用负责。
讲清原理
starter可围绕已有数据源创建SqlSessionFactory与SqlSessionTemplate,并识别Mapper;扫描范围和XML资源位置要明确。Mapper是数据访问入口,事务边界通常放在需要共同提交的服务操作上。
值使用参数绑定,动态列名和排序方向需受控选择,不把用户输入拼接进SQL。多个数据源时,还要明确每组Mapper对应的会话工厂与事务管理器,不能只给所有对象加Primary了事。
例子与易错点
本批不连接应用数据库做演示。正式接入应使用隔离的真实数据库测试SQL、映射、回滚与并发边界,不以Mapper对象能注入就宣布集成验收完成。
相关题:第 35 题、第 37 题、第 56 题。
这道题,你掌握得怎么样?
掌握程度由你主动标记,阅读和收藏不会自动改变状态。