一、MyBatis的构建过程:
1.在IDeal中连接数据库
2.创建一个maven项目
3.在pom.xml文件中引入需要的依赖(必须引进的是:mybatis、junit、mysql)
以下很重要:***
<!-- 在build中配置resources,来防止我们资源导出失败的问题-->
<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>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<!--根据个人需要自己修改-->
<source>14</source> jdk版本
<target>14</target>
</configuration>
</plugin>
</plugins>
</build>
三、创建一个工具类MyBatisUtil(可以直接拿来用)
代码:无脑直接用
package com.kuang.utils;
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.InputStream;
//sqlSessionFactory构建-->sqlSession
//这三句话直接官网拿,都是死的
public class MybatisUtils {
private static SqlSessionFactory sqlSessionFactory;
// 获取sqlsession对象
static {
try {
String resource = "mybatis-config.xml";
InputStream inputStream = Resources.getResourceAsStream(resource);
sqlSessionFactory = new SqlSessionFactoryBuilder().build(inputStream);
} catch (IOException e) {
e.printStackTrace();
}
}
public static SqlSession getSqlSession(){
return sqlSessionFactory.openSession();
}
}
四、配置mybatis-config.xml文件:
!!!此时准备工作已经完成,准备开始操作数据库!!!
五、写一个实体类bean层,例如上图中的pojo中的User,将属性私有化封装
六、写一个接口:UserMapper 方便对bean层进行数据操作:
!做了一个list集合,将泛型设为bean层中的User,目的为了将数据从数据库中取出到集合中!
七、写一个Mapper文件代替传统的DAO实现类
八、测试刚刚的查询
注意:若不写上述构建过程步骤3中的标签,maven由于它的约定大于配置,可能会导致我写的配置文件无法被导出或者生效的问题
最后测试结果如下:
查询到的数据与数据库中的结果完全一致,成功!!
注意:可能会遇到的问题:
1.配置文件没有注册
2.绑定接口错误
3.方法名没有写对
4.返回类型不对
5. maven导出问题