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

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

时间2025-05-03 15:04:19分类IT科技浏览3863
导读:📋 个人简介 💖 作者简介:大家好,我是阿牛,全栈领域优质创作者。😜 📝 个人主页:馆主阿牛🔥 🎉 支持我:点赞👍+收藏⭐️+留言📝 📣 系列专栏: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
解决打呼噜只需一杯水(解决Cannot read properties of undefined (reading ‘resetFields‘)) web of science(Web Spider 常见混淆EVAL、AA、JJ、JSFUCK)