Mybatis笔记(1)
什么是Mybatis
Mybatis是一种Java持久框架,它将数据库访问对象映射成为Java对象,通过XML文件或注解配置SQL语句,将Java对象与数据库表进行交互。Mybatis可用于快速地访问数据库并执行CRUD操作。
Mybatis的优点
Mybatis的优点包括:
- 易于理解和上手
- 灵活的查询语言支持
- 可自定义SQL语句和映射
- 支持返回复杂的数据结构
Mybatis的基本用法
Mybatis的基本使用步骤包括:
- 配置Mybatis配置文件
- 创建SqlSessionFactory对象,并从SqlSessionFactory中获取SqlSession对象
- 使用SqlSession对象进行数据库操作
- 关闭SqlSession对象
以下是Mybatis的基本使用示例代码:
// 加载Mybatis配置文件
InputStream stream = Resources.getResourceAsStream("mybatis-config.xml");
// 创建SqlSessionFactory对象
SqlSessionFactory sessionFactory = new SqlSessionFactoryBuilder().build(stream);
// 获取SqlSession对象
SqlSession session = sessionFactory.openSession();
//操作数据库
//session.selectOne("mapper中的SQL ID", 参数);
// 关闭SqlSession对象
session.close();
Mybatis的配置文件
Mybatis的配置文件包括两部分:数据库连接信息和Mybatis全局属性的配置。其中,Mybatis全局属性的配置会影响整个Mybatis的运行环境和行为。配置文件示例:
<?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>
<!-- 数据库连接信息 -->
<environments default="development">
<environment id="development">
<transactionManager type="JDBC"/>
<dataSource type="POOLED">
<property name="driver" value="com.mysql.jdbc.Driver"/>
<property name="url" value="jdbc:mysql://localhost:3306/mybatis"/>
<property name="username" value="root"/>
<property name="password" value="123456"/>
</dataSource>
</environment>
</environments>
<!-- Mybatis全局属性的配置 -->
<settings>
<setting name="mapUnderscoreToCamelCase" value="true"/>
<setting name="cacheEnabled" value="true"/>
</settings>
</configuration>
Mybatis的Mapper接口和映射文件
在Mybatis中,通过Mapper接口和映射文件实现Java对象和数据库表的映射。Mapper接口中定义了数据库操作的方法,映射文件中定义了SQL语句和Java对象的映射关系。示例:
// Mapper接口定义
public interface StudentMapper {
Student selectById(Integer id);
}
// 映射文件
<select id="selectById" resultType="com.example.entity.Student">
select * from student where id = #{id}
</select>
上述代码定义了一个名为StudentMapper的Mapper接口,并在映射文件中定义了一个id为selectById的查询语句,用于查询id等于参数id的学生信息。
总结
本篇文章介绍了Mybatis的基本概念和用法,包括Mybatis的优点、配置文件、Mapper接口和映射文件等知识点。Mybatis是一个非常实用的Java持久框架,对于Java后台开发人员来说,掌握Mybatis的使用是非常有必要的。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:mybatis笔记(1) - Python技术站