目录
对Mybatis的简单认识与环境配置
1.MyBatis介绍
MyBatis 是支持普通 SQL 查询,存储过程和高级映射的优秀持久层框架。它与数据库有关,是一个半成品框架,MyBatis 消除了几乎所有的 JDBC 代码和参数的手工设置以及结果集的检索。MyBatis 使用简单的 XML 或注解用于配置和原始映射,将接口和 Java 的 POJOs(Plan Old Java Objects,普通的 Java 对象)映射成数据库中的记录也就是将数据查询结果包装成对应对象。
2.Mybatis入门程序
程序架构
2.1导入maven依赖
<dependencies>
<!-- MyBatis -->
<dependency>
<groupId>org.mybatis</groupId>
<artifactId>mybatis</artifactId>
<version>3.5.9</version>
</dependency>
<!-- MySQL 数据库驱动 -->
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>8.0.28</version>
</dependency>
</dependencies>
2.2编写配置文件
(数据源中填入自己的Mysql用户以及密码)
<?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">
<!--default设定连接哪一个数据库,环境,值-->
<configuration>
<environments default="dev">
<environment id="dev">
<!--控制事务 用jdbc控制-->
<transactionManager type="JDBC">
</transactionManager>
<!--配置数据源 采用数据库连接池技术-->
<dataSource type="POOLED">
<property name="username" value="root"></property>
<property name="password" value="1234"></property>
<property name="driver" value="com.mysql.cj.jdbc.Driver"></property>
<property name="url" value="jdbc:mysql://localhost:3306/buka.db_6?characterEncoding=utf8&useSSL=false&serverTimezone=UTC"></property>
</dataSource>
</environment>
</environments>
<!--存储映射文件-->
<mappers>
<mapper url="UserMapper.xml"></mapper>
</mappers>
</configuration>
2.3 创建接口
public interface UserDao {
//用于获取数据库中user表中数据的量
public int getCount();
}
2.4编写映射文件
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<!--对哪个接口进行映射,接口的实现类-->
<mapper namespace="com.buka.dao.UserDao">
<!--select:查询语句 id:接口的方法名 resultType设置返回值类型-->
<select id="getCount" resultType="int">
select count(1) from `user`
</select>
</mapper>
2.5将映射文件保存到配置文件中
(以写入上方配置文件中)
<mappers>
<mapper resource="UserMapper.xml"/>
</mappers>
2.6简单测试
查询表中的数据数量
import com.buka.dao.UserDao;
import org.apache.ibatis.io.Resources;
import org.apache.ibatis.session.SqlSession;
import org.apache.ibatis.session.SqlSessionFactory;
import org.apache.ibatis.session.SqlSessionFactoryBuilder;
import java.io.IOException;
import java.io.Reader;
public class MybatisTest {
public static void main(String[] args) throws IOException {
String resource="mybatisConfig.xml";
Reader reader= Resources .getResourceAsReader(resource);
//获取SqlSessionFactory工厂
SqlSessionFactory sqlSessionFactory= new SqlSessionFactoryBuilder().build(reader);
//获取一次Sql会话 SqlSession
SqlSession session=sqlSessionFactory.openSession();
//获取数量 参数接口为UserDao接口 获取到UserDao类型的对象
UserDao userDao= session.getMapper(UserDao.class);
System.out.println(userDao);
}
}
我的表中有6条数据
查询结果为6
总结
刚刚学习Mybatis,以上内容为添加依赖以及配置文件的书写,最后进行简单的验证测试,持续跟进学习