
环境配置
注意事项:先配置资源过滤,免得@Test下面找不到资源
注意作用域提高之后,不要再新new一个对象,避免覆盖
搭建环境
搭建数据库
新建项目:
1 新建一个普通Maven项目:注意名字,注意Maven是不是自己的还是idea自带的
2 删掉src目录,把他当作一个父工程
3 导入依赖:数据库驱动 mybitis junit
4 创建一个模块new module,一个普通的,nest ,Artifactld按照规范:mybatis-01(这样创建的好处,子项目不需要每次去导包)
编写核心配置文件
1 编写mybatis的核心配置文件Mybatis-config.xml
2 编写工具类MybatisUtils
3 编写实体类,和dao层的接口,接口下面编写Mapper
4 测试里面调用

测试作用(把接口变成一个对象,以便调用方法)
和javaweb是一样的那个是先拿到连接,这个是在工厂里面先拿到SqlSession
1 拿到Session
2 把接口变成一个对象
3 调用
核心配置
就是配置数据库相关的,mappers,用/,放我们配置接口的Mapper.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.microsoft.sqlserver.jdbc.SQLServerDriver"/>
<property name="url" value="jdbc:sqlserver://localhost:1433;DatabaseName=mybatis;encrypt=true;trustServerCertificate=true"/>
<property name="username" value="sa"/>
<property name="password" value="123456"/>
</dataSource>
</environment>
</environments>
<mappers>
<mapper resource="com/counter/dao/UserMapper.xml"/>
</mappers>
</configuration>
utils工具类
package com.counter.utils;
import org.apache.ibatis.session.SqlSession;
import org.apache.ibatis.session.SqlSessionFactory;
import org.apache.ibatis.session.SqlSessionFactoryBuilder;
import java.io.InputStream;
public class MybatisUtils {
private static SqlSessionFactory sqlSessionFactory ;
static {
try {
//使用Mybatis第一步:获取sqlSessionFactory对象
String resource = "mybatis-config.xml";
InputStream inputStream = MybatisUtils.class.getClassLoader().getResourceAsStream(resource);
sqlSessionFactory = new SqlSessionFactoryBuilder().build(inputStream);
System.out.println("MybitsUtils cg");
System.out.println(sqlSessionFactory);
}catch (Exception e) {
System.out.println("NybitsUtils sb");
e.printStackTrace();
}
}
public static SqlSession getSqlSession() {
return sqlSessionFactory.openSession();
}
}
UserMapper.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="com.counter.dao.Userdao">
<select id="getUsers" resultType="com.counter.pojo.User">
select * from [user]
</select>
</mapper>
namepace放接口位置
id里面放方法名,resultType返回类型

先创建一个配置文件
再创建一个工具类
创建实体类
创建接口
创建xml文件调用这个接口
<build>
<resources>
<resource>
<directory>src/main/resources</directory>
<includes>
<include>**/*.properties</include>
<include>**/*.xml</include>
</includes>
<filtering>true</filtering>
</resource>
<resource>
<directory>src/main/java</directory>
<includes>
<include>**/*.properties</include>
<include>**/*.xml</include>
</includes>
<filtering>true</filtering>
</resource>
</resources>
</build>
!!!!!重点:提升作用域
如果我在方法前提升了作用域,下面记得就不要new了,不然会覆盖掉!!!!!!!!!!