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!感谢观看


相关文章
|
10天前
|
小程序 数据可视化 Java
Java+后端Spring boot 开发的全套UWB定位方案,0.1米高精度定位系统源码
UWB定位系统由硬件定位设备、定位引擎和应用软件组成。该定位系统应用软件支持PC端和移动端访问,并提供位置实时显示、历史轨迹回放、人员考勤、电子围栏、行为分析、智能巡检等功能。定位精度高达10cm,同时具备高动态、高容量、低功耗的优点。应用场景包括:隧道、化工、工厂、煤矿、工地、电厂、养老、展馆、整车、机房、机场等。
36 8
|
4天前
|
前端开发 JavaScript Java
计算机Java项目|基于Web的足球青训俱乐部管理后台系统的设计与开发
计算机Java项目|基于Web的足球青训俱乐部管理后台系统的设计与开发
|
4天前
|
前端开发 JavaScript Java
计算机Java项目|热门网游推荐网站的设计与开发
计算机Java项目|热门网游推荐网站的设计与开发
计算机Java项目|热门网游推荐网站的设计与开发
|
4天前
|
存储 前端开发 JavaScript
基于JavaWeb实现停车场管理系统
基于JavaWeb实现停车场管理系统
|
4天前
|
前端开发 JavaScript Java
图书借阅管理平台|基于JavaWeb实现图书借阅系统
图书借阅管理平台|基于JavaWeb实现图书借阅系统
|
6天前
|
传感器 小程序 搜索推荐
(源码)java开发的一套(智慧校园系统源码、电子班牌、原生小程序开发)多端展示:web端、saas端、家长端、教师端
通过电子班牌设备和智慧校园数据平台的统一管理,在电子班牌上,班牌展示、学生上课刷卡考勤、考勤状况汇总展示,课表展示,考场管理,请假管理,成绩查询,考试优秀标兵展示、校园通知展示,班级文化各片展示等多种化展示。
31 0
(源码)java开发的一套(智慧校园系统源码、电子班牌、原生小程序开发)多端展示:web端、saas端、家长端、教师端
|
5天前
|
监控 安全 自动驾驶
基于java+单体服务 + 硬件(UWB定位基站、卡牌)技术架构开发的UWB室内定位系统源码 UWB定位技术 超宽带定位 高精度定位系统源码
基于java+单体服务 + 硬件(UWB定位基站、卡牌)技术架构开发的UWB室内定位系统源码 UWB定位技术 超宽带定位 高精度定位系统源码
17 3
|
9天前
|
安全 Java Android开发
Kotlin与Java:Android开发的双剑合璧
【6月更文挑战第9天】Kotlin和Java在Android开发中形成互补态势。Java凭借广泛社区支持和丰富的类库资源占据主导,但其语法繁琐和空指针问题限制了发展。Kotlin,设计来解决这些问题,以其简洁、安全、高效的特性逐渐兴起。Kotlin的互操作性允许与Java无缝集成,提升开发效率,减少错误。两者结合提高了代码质量和开发者的灵活性,促进了Android开发社区的繁荣。开发者应把握这种&quot;双剑合璧&quot;,适应技术发展。
22 10
|
10天前
|
监控 数据管理 Java
智慧城管源码,基于微服务+java+springboot+vue+uniapp开发的城管综合执法系统源码
智慧城管执法系统利用微服务和Java技术提升城市管理水平,涵盖事件处理、投诉、处罚等功能,包含PC和APP源码。系统支持执法APP,便于领导随时随地审批,具备文书模板、地图定位、法规查询等功能。此外,执法办案系统通过监控视频分析事件,实现案件全程闭环管理,包括组织、案件、信用和执法队伍管理,以及法规库等基础支撑。系统旨在优化流程,提高数据管理和效率。
智慧城管源码,基于微服务+java+springboot+vue+uniapp开发的城管综合执法系统源码
|
4天前
|
缓存 NoSQL Java
Java高并发实战:利用线程池和Redis实现高效数据入库
Java高并发实战:利用线程池和Redis实现高效数据入库
20 0