引言
欢迎来到 MyBatis 的简介与基础使用指南!MyBatis 是一个备受欢迎的 Java 持久层框架,它在 Java 应用程序中实现了简单、灵活、高效的数据库访问。本文将引导您进入 MyBatis 的世界,从了解其基本概念到实际应用中的使用,帮助您轻松入门并开始使用这个强大的框架。
什么是 Mybatis
MyBatis(前身为 iBatis)是一个用于 Java 编程语言的持久层框架。它提供了一种将数据库操作与 Java 对象之间的映射关系定义在 XML 文件或注解中的方式,以简化数据库访问和操作。MyBatis 允许开发者通过配置文件或注解来定义 SQL 语句,并将查询结果映射到 Java 对象,从而实现了对象关系映射(ORM)。这种简洁而直观的方法使得开发者能够更轻松地与数据库交互,而无需编写复杂的 SQL 语句。
MyBatis 的历史与发展
MyBatis 最早由 Clinton Begin 创建,最初称为 iBATIS。它在 2002 年首次发布,随后迅速成为 Java 开发社区中备受欢迎的持久层框架。在 2010 年,iBATIS 的维护权交给了 Apache 软件基金会,随后框架改名为 MyBatis。自那以后,MyBatis 经过不断的改进和发展,已经成为了 Java 持久层框架中的佼佼者。
Mybatis 在 Java 开发的重要性
MyBatis 在 Java 开发中具有重要性,它为 Java 应用程序与数据库之间的数据访问提供了强大的工具和解决方案。Mybatis 在 Java 主要有以下几点重要性:
MyBatis 的优势
MyBatis作为一种Java持久层框架,具有多重优势,使其在数据库访问中备受欢迎。以下是MyBatis的主要优势:
总的来说,MyBatis 的主要优势在于其灵活性、可读性、性能、轻量级特性以及与 SQL 和 ORM 的结合。这些优势使得 MyBatis 成为了 Java 开发中一个备受欢迎的持久层框架,适用于各种不同规模和类型的应用程序。选择 MyBatis 可以帮助开发者简化数据库访问并提高开发效率。但请注意,选择持久层框架通常还依赖于项目的具体需求和开发团队的偏好。
Mybatis 环境设置
Maven 下载与安装
下载 Maven
具体操作如下图所示:
安装 Maven
解压 Maven
下载完成后,将 ZIP 文件解压到您选择的目录。可以选择将 Maven 解压到任何位置,例如 /opt
(Linux/macOS)或 C:
(Windows)。
解压后的目录结构应该如下所示:
Linux 配置环境变量
~/.bashrc
或 ~/.zshrc
文件,具体取决于您使用的 shell。/path/to/apache-maven-3.x.y
为您解压 Maven 的实际路径:export M2_HOME=/path/to/apache-maven-3.x.y
export PATH=$M2_HOME/bin:$PATH
source ~/.bashrc # 如果您使用的是bash shell,两者二选其一即可
source ~/.zshrc # 如果您使用的是zsh shell
Windows 配置环境变量
右键点击 "计算机" 或 "此电脑",然后选择 "属性"。
在左侧面板中,选择 "高级系统设置"。
在系统属性窗口中,点击 "环境变量" 按钮。
在用户变量或系统变量部分,点击 "新建"。
输入以下信息:
- 变量名:
M2_HOME
- 变量值:Maven 的安装路径(例如,
C:apache-maven-3.x.y
)
找到系统变量中的 Path
,点击 "编辑"。
在编辑环境变量窗口中,点击 "新建",然后添加 %M2_HOME%bin
。
点击 "确定" 以保存所有更改。
验证 Maven 是否安装成功
基于 Idea 创建 Maven 项目
www.cnblogs.com/giswhw/p/14…
Mybatis 依赖引入
org.mybatis
mybatis
3.x.y
com.h2database
h2
1.4.200
mysql
mysql-connector-java
8.0.28
org.postgresql
postgresql
42.2.27
驱动请按照数据库版本进行对应dev.mysql.com/doc/relnote…
配置 MyBatis 配置文件
MyBatis 的配置文件是一个 XML 文件,通常命名为 mybatis-config.xml
,它包含了MyBatis框架的全局配置信息。这个配置文件指导MyBatis如何工作,包括数据库连接、缓存、映射文件等各种设置。
下面是一个最基本的示例
经过上述配置,Mybatis 项目已经配置完毕。
Mybatis 基本使用
创建实体类 User
public class User implements Serializable{
private Long id ;
private String userName ;
private Date createTime;
// get/set 方法省略
}
创建 User 的 Mapper 接口
public interface UserMapper {
User selectById(Integer id);
// 插入
Integer insertUser(User user);
// 更新
Integer updateUser(User user);
// 删除
Integer deleteUser(Integer id);
}
创建 Mapper 接口对应的 Mapper 映射文件
select id,user_name,create_time from t_user
and id=#{id}
编写 Mybatis 测试类
public class MybatisTest {
SqlSessionFactory sqlSessionFactory;
@Before
public void before(){
// 从 XML 中构建 SqlSessionFactory
String resource = "mybatis-config.xml";
InputStream inputStream = null;
try {
inputStream = Resources.getResourceAsStream(resource);
} catch (IOException e) {
e.printStackTrace();
}
sqlSessionFactory = new SqlSessionFactoryBuilder().build(inputStream);
}
/**
* 基于StatementId的方式去执行SQL
*
*/
@Test
public void test() {
try (SqlSession session = sqlSessionFactory.openSession()) {
User user = (User) session.selectOne("cn.use.UserMapper.selectById", 1);
System.out.println(user);
}
}
}
总结
总的来说,MyBatis 是一个强大的 Java 持久层框架,为 Java 开发者提供了一个灵活且强大的工具来管理数据库访问。通过本指南,我们学习了如何配置 MyBatis、编写 SQL 映射文件、执行 SQL 操作等操作。这些基础知识为进一步探索 MyBatis 的高级特性和用法奠定了坚实的基础。无论您是初学者还是有经验的开发者,MyBatis 都是一个值得学习和掌握的工具。