为什么要用mybatis:传统的JDBC代码进行开发操作的时候,需要花费精力去建立驱动、创建connection、创建statement、并且还要关注sql语句。mybitis是一个封装了JDBC的一个对象关系映射(ORM)框架,使用mybatis极大的提高开发工作的效率。
什么是mybatis:mybatis是apache的一个开源项目,是三大框架中的数据访问层中的主流框架,用于对数据库的CRUD(增删改查)操作。
说了这么多,我们或多或少对与mybatis有了些许了解,那么,这个mybatis框架该怎么用呢?
1,配置核心配置文件mybatis-config.xml,将该文件放置到resources下,在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>
<!--起别名-->
<typeAliases>
<package name="com.hua.pojo"/>
</typeAliases>
<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:///mybatis?useSSL=false&useServerPrepStmts=true&serverTimezone=GMT%2B8"/>
<property name="username" value="root"/>
<property name="password" value="******"/>
</dataSource>
</environment>
</environments>
<mappers>
<!--扫描mapper-->
<package name="com.hua.mapper"/>
</mappers>
</configuration>
2.接下来进行mapper代理开发的
1)在src中的java以及resources目录下分别创建mapper接口以及sql映射文件。注意接口与与映射文件应该在同一级目录下
![](/i/l/?n=23&i=blog/2810049/202301/2810049-20230108105936845-1245964013.png)
2)将sql中的映射文件的namespace的属性更改为mapper接口的全限域名
3)在mapper接口中编写方法,这里我将查询的sql语句用@注解表示了,但是对于更为复杂的的sql语句我们要使用xml的方式。resultMap是解决数据库中的数据项目名与pojo中的封装的变量名称不对应的问题。这样,我们在调用selectAll方法的时候,就会返回一个封装了数据信息的一个list的集合。
4)最后就是编码环节,这样我们就能在控制台发现我们数据库中查询的结果了。
//获取SqlSessionFactory对象
String resource = "mybatis-config.xml";
InputStream inputStream = Resources.getResourceAsStream(resource);
SqlSessionFactory sqlSessionFactory = new SqlSessionFactoryBuilder().build(inputStream);
// 获取SqlSession对象
SqlSession sqlSession = sqlSessionFactory.openSession();
// 获取Mapper
BrandMapper mapper=sqlSession.getMapper(BrandMapper.class);
//调用mapper获取从数据库查询出来的list集合
List <Brand> brands=mapper.selectAll;
//打印输出
System.out.print(brands);
标签:总结,mapper,映射,xml,Mabits,学习,sql,mybatis,config From: https://www.cnblogs.com/130-gzh/p/17034338.html