重点:mybatis注意细节

首先注意资源过滤问题,放在dependes下面

java 复制代码
 <build>
        <resources>
            <resource>
                <directory>src/main/java</directory>
                <includes>
                    <include>**/*.xml</include>
                </includes>
                <filtering>false</filtering>
            </resource>
            <resource>
                <directory>src/main/resources</directory>
                <filtering>false</filtering>
            </resource>
        </resources>
    </build>

编写dao层的接口

编写mapper.xml文件(注意绑定接口) 注意namespace反正就是注意mapper

复制代码
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper
        PUBLIC "-//mybatis.org//DTD Config 3.0//EN"
        "http://mybatis.org/dtd/mybatis-3-mapper.dtd">

<mapper namespace="com.counter.dao.Usermapper">
    <insert id="addUser" parameterType="com.counter.pojo.User">
        insert into [user] values (#{id},#{name},#{age})
    </insert>
</mapper>

mapper写完之后注册到config下面的xml中

XML 复制代码
 <mappers>
        <mapper resource="com/counter/dao/Usermapper.xml"></mapper>
 </mappers>

就可以调用了前提是先写一个工具类(工具类用于制造工厂)

java 复制代码
//获得sqlsession对象
        SqlSession sqlSession = MybatisUtils.getSqlSession();

//通过接口获得class对象,让Mybatis生成该接口的代理实现类

        Usermapper mapper = sqlSession.getMapper(Usermapper.class);

 //有代理实现类就可以调用方法就是在mapper中写的sql语句
        mapper.addUser(user);

        sqlSession.commit();
        sqlSession.close();

工具类:

java 复制代码
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);

        }catch (Exception e) {
            e.printStackTrace();
        }
    }
    public static SqlSession getSqlSession() {
        return sqlSessionFactory.openSession();
    }
}

后面我们用Spring之后,他就会自动帮我们完成这个操作

相关推荐
吴长建先生重名了1 分钟前
ElasticSearch 检索系统性能优化实战:基准测试
java
西索斯coding9 分钟前
doubao-seed-2.1-turbo 调用一直 401 怎么办?pro 版同样的 Key 却正常——5 分钟排查定位指南
java·服务器·数据库·ai
旧梦952716 分钟前
Java SortedMap 接口详解:从入门到实战
java·开发语言
莫陌尛.20 分钟前
Java_this构造方法
java·开发语言
2601_9622972539 分钟前
C# vs Java vs Python:YOLO工业部署性能对比实战
java·python·c·工业视觉·性能对比
计算机毕设定制辅导-无忧学长41 分钟前
《基于SpringBoot的马术俱乐部管理系统》
java·spring boot·后端
Dreams°1231 小时前
【Java后端+Vue前后端分离:内网正常、公网访问异常|5个高频经典踩坑完整复盘】
java·开发语言·vue.js
学长毕业设计1 小时前
基于SpringBoot的民间艺术传承管理系统(源码+文档+讲解视频)
java·spring boot·后端
小蒜学长1 小时前
基于Springboot+Vue的环保行动志愿者招募系统设计与实现(代码+数据库+LW)
java·数据库·vue.js·spring boot·后端
frjc1 小时前
如何在 IDEA 中打开并运行已有Java项目
java·ide·intellij-idea