温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

java mybatis是什么

发布时间:2026-10-13 21:53:36 来源:亿速云 阅读:112 作者:小樊 栏目:编程语言

Java 中的 MyBatis 是什么?

MyBatis 是一个持久层框架(ORM 框架),用于简化 Java 程序与数据库之间的交互。它最早是 Apache 的 iBatis,后来改名为 MyBatis。


一句话理解

MyBatis = JDBC 的封装 + SQL 与 Java 代码解耦

你写 SQL,MyBatis 帮你:

  • 建立数据库连接
  • 执行 SQL
  • 把结果集自动映射成 Java 对象
  • 把 Java 对象参数传给 SQL

为什么用 MyBatis?

传统 JDBC 的问题:

  • 代码冗余(加载驱动、创建连接、关闭资源)
  • SQL 写死在 Java 里,难维护
  • 结果集手动封装,麻烦

MyBatis 解决:

  • 少写模板代码
  • SQL 可写在 XML 或注解中
  • 自动映射结果到对象

MyBatis 核心组成

  1. SqlSessionFactory
    创建 SqlSession 的工厂(全局只有一个)

  2. SqlSession
    执行 SQL 的对象(类似 Connection)

  3. Mapper 接口
    定义数据库操作方法

  4. XML / 注解 SQL
    写具体的 SQL 语句


简单示例

Mapper 接口

public interface UserMapper {
    User selectById(int id);
}

XML 映射

<select id="selectById" resultType="User">
    SELECT * FROM user WHERE id = #{id}
</select>

使用

User user = userMapper.selectById(1);

MyBatis vs Hibernate

对比 MyBatis Hibernate
SQL 控制 强(自己写 SQL) 弱(自动生成)
学习成本 低 高
性能优化 容易 较难
适合场景 复杂 SQL、报表 简单 CRUD

常见搭配

  • Spring + MyBatis
  • MyBatis-Plus(增强版)
  • MySQL / Oracle / PostgreSQL

如果你愿意,我也可以:

  • 给你一个 Spring Boot + MyBatis 完整示例
  • 讲 MyBatis 和 JDBC 的区别
  • 讲 MyBatis 面试题

你想看哪一个?

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI
助
手