1、配置文件引入MyBatis。
2、在resources下编写MyBatis配置文件mybatis-conflg.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.cj.jdbc.Driver"/>
<!-- 数据库 -->
<property name="url" value="jdbc:mysql://localhost:3306/db_diary?useSSL=false&serverTimezone=UTC"/>
<!-- -->
<property name="username" value="root"/>
<property name="password" value="123456"/>
</dataSource>
</environment>
</environments>
<mappers>
<!-- 接口映射路径 -->
<mapper resource="mapper/usermapper.xml"/>
</mappers>
</configuration>
3、编写接口映射文件
<?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.wed.mapper.usermapper"><--映射接口地址 -->
</mapper>
4、编写接口(类名与配置文件同名)
import com.wed.user.user;
import org.apache.ibatis.annotations.Param;
public interface usermapper {
user userlogin(@Param("id") String id,@Param("password") String password);
user register(@Param("id") String id);
int addregister(user adduser);
}
5、myBatisUtil工具类
public class MyBatisUtil {
public static SqlSessionFactory sqlSessionFactory;
//单线程可见 安全保障 避免线程冲突
private static ThreadLocal<SqlSession> sqlSessionThreadLocal=new ThreadLocal<>();
//静态代码块 执行一次
static {
String resource = "mybatis-config.xml";
InputStream inputStream = null;
try {
inputStream = Resources.getResourceAsStream(resource);
sqlSessionFactory = new SqlSessionFactoryBuilder().build(inputStream);
} catch (IOException e) {
e.printStackTrace();
}
}
// 获取Sqlsessio对象
public static SqlSession getSqlsession(){
SqlSession sqlSession=sqlSessionThreadLocal.get();
if (sqlSession==null){
sqlSession=sqlSessionFactory.openSession(true);
sqlSessionThreadLocal.set(sqlSession);
}
return sqlSession;
}
// 关闭SqlSession对象
public static void closeSession(SqlSession sqlSession){
SqlSession session=sqlSessionThreadLocal.get();
if (session!=null){
session.close();
sqlSessionThreadLocal.set(null);
}
}
}
6、使用工具类MyBatisUtil
SqlSession session= MyBatisUtil.getSqlsession(); usermapper mappaer=session.getMapper(usermapper.class);