首页IT科技mybatis代理类(【java web篇】MyBatis之Mapper代理)

mybatis代理类(【java web篇】MyBatis之Mapper代理)

时间2025-08-04 22:58:32分类IT科技浏览4686
导读:📋 个人简介 💖 作者简介:大家好,我是阿牛,全栈领域优质创作者。😜 📝 个人主页:馆主阿牛🔥 🎉 支持我:点赞👍+收藏⭐️+留言📝 📣 系列专栏:java 小白到高手的蜕变🍁...

📋 个人简介

💖 作者简介:大家好             ,我是阿牛                   ,全栈领域优质创作者             。😜 📝 个人主页:馆主阿牛🔥 🎉 支持我:点赞👍+收藏⭐️+留言📝 📣 系列专栏:java 小白到高手的蜕变🍁 💬格言:要成为光       ,因为有怕黑的人!🔥

Mapper代理

上一节MyBatis快速入们中依旧有硬编码的部分:

List<Member> members = sqlSession.selectList("test.selectAll");

这里test.selectAll就是硬编码       ,当我们xml文件中sql语句较多时                   ,依旧不太方便             ,还没有提示功能!       ,因此本节就介绍Mapper代理                    ,使用Mapper代理方式完成上一篇的入门案例!

步骤如下图:

对于第一步             ,请看下面目录结构:

我们可以直接将MemberMapper.xml放到java.com.aniu.mapper目录下,但这样不符合项目规范                    ,xml配置文件我们一般都放resources目录                    ,因此你需要在resources目录建一个同样的目录,这样Maven编译后的class文件Member.Mapper和MemberMapper.xml依旧在同一个目录:

需要注意的是             ,resources里面是目录                    ,我们不能以包的com.aniu.mapper的方式建立多层文件夹       ,应该用com/aniu/mapper这种方式!

第二步:

命名空间设为Mapper接口的全限定名!

第三步:

需要注意的是要记得在配置文件中更改映射文件的路径!

当然             ,当sql映射文件多了之后                   ,mybatis配置文件中要导入的sql映射文件也就多了       ,我们用这种Mapper代理的方式       ,可以用包扫描方式一次引入所有的sql映射文件! public class MyBatisDemo2 { public static void main(String[] args) throws IOException { //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<Member> members = sqlSession.selectList("test.selectAll"); // 命名空间+id                    ,这就是命名空间的作用:便于区分 MemberMapper memberMapper = sqlSession.getMapper(MemberMapper.class); List<Member> members = memberMapper.selectAll(); System.out.println(members); //4. 释放资源 sqlSession.close(); } }

结语

如果你觉得博主写的还不错的话             ,可以关注一下当前专栏,博主会更完这个系列的哦!也欢迎订阅博主的其他好的专栏                   。

🏰系列专栏

👉flask框架入门到实战

👉软磨 css

👉硬泡 javascript

创心域SEO版权声明:以上内容作者已申请原创保护,未经允许不得转载,侵权必究!授权事宜、对本内容有异议或投诉,敬请联系网站管理员,我们将尽快回复您,谢谢合作!

展开全文READ MORE
前端开发css(前端学习之CSS)