首页 > 其他分享 >在做结果集封装时,若结果集表头与成员变量名不一致该如何解决?

在做结果集封装时,若结果集表头与成员变量名不一致该如何解决?

时间:2024-08-28 19:59:32浏览次数:14  
标签:实体类 封装 配置文件 适配 数据库 表头 一致 子句 变量名

目录

1. 通过别名映射为一致:as子句

2. 使用resultMap

3. 在配置文件中开启适配规则


在Score实体类中,我们定义了studentId、courseId、score、status,而在数据库中,我们设置如下:

1. 通过别名映射为一致:as子句

在持久层接口中,我们定义了select1()方法,返回类型为List<Score>。由于实体类中的属性名与数据库中表的字段的不一致,因此可以在ScoreDao.xml文件中的SQL语句中,使用as子句,使二者成功匹配。

最后在测试类中进行测试:

成功查询得到数据:

2. 使用resultMap

在持久层接口中定义select2()方法,在ScoreDao.xml文件中编写如下代码:

3. 在配置文件中开启适配规则

mybatis.configuration.map-underscore-to-camel-case=true

(数据库下划线与实体小驼峰命名法)

将之前两种方法的SQL语句全部注释之后仍可查询成功:

标签:实体类,封装,配置文件,适配,数据库,表头,一致,子句,变量名
From: https://blog.csdn.net/apple_64847327/article/details/141647846

相关文章

  • pygame封装连个常用控件
    #coding=utf-8importos,sys,re,timeimportpygameimportrandomfromwin32apiimportGetSystemMetricsfromtkinterimportmessageboxpygame.init()pygame.display.set_caption("我的控件")percent=0.6screen_width=GetSystemMetrics(0)screen_heig......
  • C++面向对象三大特性之一(封装)
    下面这篇文我来给大家分享C++面向对象三大特性之一(封装)。一、什么是封装?分装就是一个类中的私有成员,虽然类外不可以访问,但是我们提供一些公共的接口来间接让其他人访问到,例如一个人的名字我们起好之后就一般不会允许其他人改你的姓名,但是我们可以通过一些方式得到你的姓名......
  • js 封装日志上传模块,实现异常日志的上报
    封装定义日志上传模块,实现异常日志的上报,包含触发方式:1、主动调取方法上报2、覆盖原生console.error实现,收集所有console.error打印的日志3、window注册绑定error事件,触发 window.addEventListener('error',/***客户端日志上传模块,实现异常日志的上报*使用时在HTML......
  • quill-editor 富文本 组件封装并实现自定义上传图片
    基于quill-editor封装一个富文本组件,并实现自定义上传图片以及视频1.下载quill-editor npminstallvue-quill-editor--save2.对插件进行自定义改造(自定义字体大小选择,自定义标题,以及自定义工具栏功能) <template><divclass="edtior-box"><quill-editor......
  • 在 C/C++ 中使用 MY_API 宏封装动态库:一种高效的跨平台接口实现方法
    目录1.背景介绍2.MY_API宏的定义3.使用MY_API宏封装动态库4.编译和使用动态库5.结论在现代软件开发中,封装动态库(DynamicLinkLibrary,DLL)以提供可复用的功能模块已经成为一种常见的实践。然而,在开发跨平台库时,由于不同操作系统对于动态库的导出和导入机制有......
  • vue element-ui表格table 表格动态 添加行、删除行、添加列、删除列 自定义表头
         vuetable表格动态添加行、删除行、添加列、删除列自定义表头; 增加一行、删除一行、添加一列、删除一列;每行带输入框input代码1、HTML部分:<template><divclass="app-container"><el-table:data="tableData"borderstyle="width:600px;margin-to......
  • notification ant插件 封装notification 防止多个相同的错误提示同时展示 message也
    import{notification}from'ant-design-vue'typeNoticeType='info'|'success'|'error'|'warning'//保证notification提示不重复constmessageSet=newSet();letclearTimer:number|undefined;interf......