JavaWeb Mapper代理开发

简介: JavaWeb Mapper代理开发

一.介绍:

       在之前的mybits的编码当中,我们会发现部分的代码在编写的时候依旧存在硬编码的问题,比方说在写测试类当中的SQL执行的时候,如图

一方面要看其原本的空间名称,另一方面还要查看原本的ID,来回转变,让人头大,显得很不方便,由此,我们可以使用MAPPER代理的方式,解决这一硬编码的问题,同样的,使用MAPPER也能够简化代码,以下为MAPPER代理的主要方式

二:MAPPER代理入门

 

     1.定义跟SQL映射文件名称相同的MAPPER的接口  ,并且一定一定需要将MAPPER接口跟SQL映射文件放置在一个的目录下

    在这里需要注意的一点,如果想要将配置文件跟接口放在一个文件夹当中,最好时不要采用将两个放在一个包下,最好是将配置文件跟其单独分开,切记不要像下面这样



       为了实现目的,其实我们仅仅只需要创建一个跟MAPPER接口相同的包名称即可,如图



  TIPS!在更改完包之后,我们的BrandMapper因为路径被修改了,所以我们需要在配置文件当中重新对其映射文件进行一个修改


     

右键,复制其路径,之后再在相应的配置文件当中进行修改即可



 如果表不在当前的数据库当中,记得也要修改相应的数据库名称,都在mybatis的配置文件当中

       2.设置SQL映射文件的名称空间属性为MAPPER接口的全限定名称

       比较容易实现,按照包的位置进行一一输入即可



 3.在MAPPER接口当中定义方法,方法名称就是SQL映射文件当中的sql语句的ID  同时的,要保证参数的类型跟返回值时一样的

  在这里,我们以全部查询为例子   还有一个小细节,就是在接收的时候我们需要提前想好拿什么进行接受,在这里查询全部的查询结果明显是一个集合的形式进行接受,所以我们使用LIST集合,接受一个Brand的对象,Brand对象里面存放的是表的一些属性以及部分的get以及set方法

       4.在测试类当中进行编码

public class MyBatisDemo2 {
    //通过使用MAPPER来简化对于JDBC的代理开发
    public static void main(String[] args) throws IOException {
        // 1.加载MYBITS的核心文件,获取SqlSessionFactory
        String resource = "mybatis-config_UserMapper.xml";
        InputStream inputStream = Resources.getResourceAsStream(resource);
        SqlSessionFactory sqlSessionFactory = new SqlSessionFactoryBuilder().build(inputStream);
 
        //2.获取SqlSession对象,从而来执行sql
        SqlSession sqlSession = sqlSessionFactory.openSession();
 
 
        //执行SQL
        //在这里填入SQL标签即可,以及空间名称
        //3.1获取UserMapper接口的代理对象
        UserMapper mapper = sqlSession.getMapper(UserMapper.class);
        List<User> users = mapper.selectAll();
 
        System.out.println(users);
 
        //4.释放资源
        sqlSession.close();
    }
}


三:核心配置文件-别名(typeAliases)

       通过使用别名的方式,我们可以让SQL返回语句得以简化

       之前,对于SQL语句的返回我们都是将其包名全部书写,如图

   在添加上标签之后,我们就可以直接在返回类型当中输入相应对象的名称,并且不区分大小写


       

添加标签方式如下;



      在package name当中填写相应对象所在的包名称即可


TIPS:需要注意的一点是,在配置各个的标签的时候,需要注意标签的顺序,如下



                                                        OVER!感谢观看


相关文章
|
7天前
|
前端开发 JavaScript Java
基于Java+Springboot+Vue开发的服装商城管理系统
基于Java+Springboot+Vue开发的服装商城管理系统(前后端分离),这是一项为大学生课程设计作业而开发的项目。该系统旨在帮助大学生学习并掌握Java编程技能,同时锻炼他们的项目设计与开发能力。通过学习基于Java的服装商城管理系统项目,大学生可以在实践中学习和提升自己的能力,为以后的职业发展打下坚实基础。
29 2
基于Java+Springboot+Vue开发的服装商城管理系统
|
5天前
|
前端开发 JavaScript Java
基于Java+Springboot+Vue开发的大学竞赛报名管理系统
基于Java+Springboot+Vue开发的大学竞赛报名管理系统(前后端分离),这是一项为大学生课程设计作业而开发的项目。该系统旨在帮助大学生学习并掌握Java编程技能,同时锻炼他们的项目设计与开发能力。通过学习基于Java的大学竞赛报名管理系统项目,大学生可以在实践中学习和提升自己的能力,为以后的职业发展打下坚实基础。
15 3
基于Java+Springboot+Vue开发的大学竞赛报名管理系统
|
6天前
|
前端开发 JavaScript Java
基于Java+Springboot+Vue开发的蛋糕商城管理系统
基于Java+Springboot+Vue开发的蛋糕商城管理系统(前后端分离),这是一项为大学生课程设计作业而开发的项目。该系统旨在帮助大学生学习并掌握Java编程技能,同时锻炼他们的项目设计与开发能力。通过学习基于Java的蛋糕商城管理系统项目,大学生可以在实践中学习和提升自己的能力,为以后的职业发展打下坚实基础。
20 3
基于Java+Springboot+Vue开发的蛋糕商城管理系统
|
6天前
|
前端开发 JavaScript Java
基于Java+Springboot+Vue开发的美容预约管理系统
基于Java+Springboot+Vue开发的美容预约管理系统(前后端分离),这是一项为大学生课程设计作业而开发的项目。该系统旨在帮助大学生学习并掌握Java编程技能,同时锻炼他们的项目设计与开发能力。通过学习基于Java的美容预约管理系统项目,大学生可以在实践中学习和提升自己的能力,为以后的职业发展打下坚实基础。
20 3
基于Java+Springboot+Vue开发的美容预约管理系统
|
7天前
|
前端开发 JavaScript Java
基于Java+Springboot+Vue开发的房产销售管理系统
基于Java+Springboot+Vue开发的房产销售管理系统(前后端分离),这是一项为大学生课程设计作业而开发的项目。该系统旨在帮助大学生学习并掌握Java编程技能,同时锻炼他们的项目设计与开发能力。通过学习基于Java的房产销售管理系统项目,大学生可以在实践中学习和提升自己的能力,为以后的职业发展打下坚实基础。
23 3
基于Java+Springboot+Vue开发的房产销售管理系统
|
8天前
|
前端开发 JavaScript Java
基于Java+Springboot+Vue开发的反诈视频宣传系统
基于Java+Springboot+Vue开发的反诈视频宣传系统(前后端分离),这是一项为大学生课程设计作业而开发的项目。该系统旨在帮助大学生学习并掌握Java编程技能,同时锻炼他们的项目设计与开发能力。通过学习基于Java的反诈视频宣传管理系统项目,大学生可以在实践中学习和提升自己的能力,为以后的职业发展打下坚实基础。
40 4
基于Java+Springboot+Vue开发的反诈视频宣传系统
|
6天前
|
存储 网络协议 Java
Java NIO 开发
本文介绍了Java NIO(New IO)及其主要组件,包括Channel、Buffer和Selector,并对比了NIO与传统IO的优势。文章详细讲解了FileChannel、SocketChannel、ServerSocketChannel、DatagramChannel及Pipe.SinkChannel和Pipe.SourceChannel等Channel实现类,并提供了示例代码。通过这些示例,读者可以了解如何使用不同类型的通道进行数据读写操作。
Java NIO 开发
|
8天前
|
前端开发 JavaScript Java
基于Java+Springboot+Vue开发的医院门诊预约挂号系统
基于Java+Springboot+Vue开发的医院门诊预约挂号系统(前后端分离),这是一项为大学生课程设计作业而开发的项目。该系统旨在帮助大学生学习并掌握Java编程技能,同时锻炼他们的项目设计与开发能力。通过学习基于Java的门诊预约挂号管理系统项目,大学生可以在实践中学习和提升自己的能力,为以后的职业发展打下坚实基础。
30 2
基于Java+Springboot+Vue开发的医院门诊预约挂号系统
|
9天前
|
前端开发 JavaScript Java
基于Java+Springboot+Vue开发的家具管理系统
基于Java+Springboot+Vue开发的家具管理系统(前后端分离),这是一项为大学生课程设计作业而开发的项目。该系统旨在帮助大学生学习并掌握Java编程技能,同时锻炼他们的项目设计与开发能力。通过学习基于Java的家具管理系统项目,大学生可以在实践中学习和提升自己的能力,为以后的职业发展打下坚实基础。
31 2
基于Java+Springboot+Vue开发的家具管理系统
|
2天前
|
安全 Java Android开发
JavaWeb解压缩漏洞之ZipSlip与Zip炸弹
JavaWeb解压缩漏洞之ZipSlip与Zip炸弹
13 2