⬇参考代码:\text {MyBatis\mybatis-demo\demo1}
简介
MyBatis 是一个流行的 Java 持久层框架,提供了对象关系映射(ORM)的功能,允许开发者通过 ORM 描述符或注解将对象与存储在数据库中的数据进行映射。
历史
- iBATIS的诞生:MyBatis 最初被称为 iBATIS,由 Clinton Begin 在 2002 年创建。iBATIS 项目的目标是简化传统的 JDBC 代码,提供更简单的编程接口来减轻开发者直接使用 SQL 和 JDBC 所带来的负担。
- 转变为 MyBatis:随着项目的发展和社区的扩大,iBATIS 项目在 2010 年被捐赠给了 Apache 软件基金会。不久之后,为了标志着框架的新生,iBATIS 3.0 被重命名为 MyBatis。这次重大更新不仅改变了名称,还引入了许多新的特性和改进,使其成为更加强大和灵活的持久层框架。
特性
- 简化数据库交互
- 灵活的映射机制
- 动态SQL
- 插件架构
- 集成简单
- 支持注解和XML配置
- 优秀的分页支持
下载
https://github.com/mybatis/mybatis-3/releases
环境搭建
父 pom.xml:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29
| <properties> <maven.compiler.source>17</maven.compiler.source> <maven.compiler.target>17</maven.compiler.target> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<mybatis.version>3.5.14</mybatis.version> <junit.version>4.12</junit.version> <mysql.connector.version>8.0.27</mysql.connector.version> </properties>
<dependencies> <dependency> <groupId>org.mybatis</groupId> <artifactId>mybatis</artifactId> <version>${mybatis.version}</version> </dependency> <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>${junit.version}</version> <scope>test</scope> </dependency> <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <version>${mysql.connector.version}</version> </dependency> </dependencies>
|
配置文件
<configuration>
标签:配置文件的根标签,包裹了所有的配置信息。
<typeAliases>
标签:用于配置类型别名,将 Java 类的完全限定名映射成一个简单的别名。
<environments>
标签:用于配置数据库环境,可以定义多个环境,但只能指定一个默认环境。
<transactionManager>
标签:指定事务管理器的类型。
<dataSource>
标签:指定数据源的类型。在 <dataSource>
标签内部,可以通过 <property>
子标签配置数据源的属性,如数据库驱动、连接 URL、用户名和密码等。相关值可以在外部的属性文件中配置,以提高灵活性和安全性。
<mappers>
标签:用于配置映射器(Mapper)。映射器负责将 SQL 语句与 Java 方法进行映射,用于执行数据库操作。
mybatis-config.xml 示例:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28
| <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE configuration PUBLIC "-//mybatis.org//DTD Config 3.0//EN" "http://mybatis.org/dtd/mybatis-3-config.dtd"> <configuration>
<properties resource="jdbc.properties"/>
<typeAliases> <package name="com.liangjiajia.cs.pojo"/> </typeAliases>
<environments default="development"> <environment id="development"> <transactionManager type="JDBC"/> <dataSource type="POOLED"> <property name="driver" value="${jdbc.driver}"/> <property name="url" value="${jdbc.url}"/> <property name="username" value="${jdbc.username}"/> <property name="password" value="${jdbc.password}"/> </dataSource> </environment> </environments>
<mappers> <mapper resource="mappers/CustomerMapper.xml"/> </mappers> </configuration>
|