配置Mybatis分为以下几步
1、创建模块,导入坐标
2、编写Mybatis的核心配置文件--- >替换连接信息,解决硬编码问题
3、编写SQL映射文件---->统一管理SQL语句
4、编码
①定义pojo类(实体类)
②加载核心配置文件
③获取sqlSession对象,执行SQL语句
④释放资源
1、在maven下导入mybatis依赖坐标
<dependency>
<groupId>org.mybatis</groupId>
<artifactId>mybatis</artifactId>
<version>x.x.x</version>
</dependency>
2、 编写Mybatis的核心配置文件
在resources配置下 编写文件,命名为 mybatis-config.xml
在此配置文件下输入(连接的本地的数据库)
<?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:///{database}?useSSL=false"/>
<property name="username" value="root"/>
<property name="password" value="123456"/>
</dataSource>
</environment>
</environments>
<mappers>
<!--加载sql的映射文件(需要修改)-->
<mapper resource="org/mybatis/example/BlogMapper.xml"/>
</mappers>
</configuration>
3、编写sql映射文件
在resources下新建文件,命名为UserMapper.xml(取决于要操作什么表,如要操作Brand表,则命名为BrandMapper.xml)
在文件里编写如下代码
<?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="org.mybatis.example.BlogMapper">
<select id="selectBlog" resultType="Blog">
select * from Blog where id = #{id}
</select>
</mapper>
namespace为名称空间,名字需要更改,暂且更改为test。
resultType为数据类型,需要将数据包装为pojo类型。
之后将mybatis-config.xml文件下的sql映射文件更改为我们上面配置好的UserMapper.xml
5、编码
定义pojo类
在IDEA中点击Alt+Insert选中Getter and Setter方法和toString方法完成自动编写。
编写Mybatis核心测试类
//1、加载mybatis的核心配置文件,获取sqlsessionfactory
String resource = "mybatis-config.xml";
InputStream inputStream = Resources.getResourceAsStream(resource);
SqlSessionFactory sqlSessionFactory = new SqlSessionFactoryBuilder().build(inputStream);
//2、获取sqlSession对象,用来执行sql
SqlSession sqlSession = sqlSessionFactory.openSession();
//3、执行sql
List<User> users= sqlSession.selectList("test.selectAll");
//4、释放资源
sqlSession.close();
查询的结果封装在users结果集里面