首页 > 数据库 >数据库属性带下划线的注意事项(下划线bug)

数据库属性带下划线的注意事项(下划线bug)

时间:2024-10-09 15:10:36浏览次数:16  
标签:实体类 下划线 material 注意事项 import 属性 bug name

①如果数据库的属性带有下划线,如下

②实体类代码

 1 package com.lian.pojo;
 2 
 3 import com.baomidou.mybatisplus.annotation.IdType;
 4 import com.baomidou.mybatisplus.annotation.TableField;
 5 import com.baomidou.mybatisplus.annotation.TableId;
 6 import java.io.Serializable;
 7 import lombok.Data;
 8 import lombok.EqualsAndHashCode;
 9 import lombok.experimental.Accessors;
10 
11 /**
12  * <p>
13  * 
14  * </p>
15  *
16  * @author lsx
17  * @since 2024-10-08
18  */
19 @Data
20 @EqualsAndHashCode(callSuper = false)
21 @Accessors(chain = true)
22 public class Materials implements Serializable {
23 
24     private static final long serialVersionUID=1L;
25 
26     /**
27      * 物料编号(主键)
28      */
29     @TableId(value = "material_id", type = IdType.AUTO)
30     private Integer materialId;
31 
32     /**
33      * 物料名称
34      */
35 
36     private String materialName;
37 
38     /**
39      * 物料可用数量
40      */
41     private Integer quantity;
42 
43 }

 

③操作方法

在mapper文件中的sql应该是

 前面的material_name是数据库中对应的material_name,后面的materialName是实体类中与material_name对应的变量名称!!!!!!!!!!!

④在传递参数时,传递的参数名称应是与实体类中相同的变量名,例如上面这个例子,我需要传递数据库中的material_name和quantity,然后我在apipost中测试时传递的数据应为:

 应该与实体类中名字相同

 

 

⑤报错信息

(1)如果在mapper文件中如下图所写时(后面values的变量未与实体类对应时,后端会报错对应的material_name没有对应的getter方法

 报错信息

 (2)如果在apipost中传递数据时,传递参数仍写的是带下划线的属性名(material_name)而不是实体类中的属性名(materialName)的话,会报错material_name属性值为null

如下(错误的情况)

 报错信息

 总结

数据库中属性带下划线的情况下,需要在后端修改两点

(1)在mapper语句中,需要将后面values中的属性名与实体类中的属性名对应

(2)在传递参数时,应该与实体类中的属性名对应,而不是与数据库表中的属性名对应

标签:实体类,下划线,material,注意事项,import,属性,bug,name
From: https://www.cnblogs.com/lian369/p/18454346

相关文章

  • 关于Tensorboard的一个小bug
    最近复现了github上的一个项目,链接如下:https://github.com/GzyAftermath/CAT-KD其中模型训练的过程作者用tensorboard进行了记录保存,在pycharm终端使用tensorboard--logdir=/path出现如下报错:tensorboard:无法将“tensorboard”项识别为cmdlet、函数、脚本文件或可运行......
  • 选型4G-Cat.1模组Air780E,必须要说的注意事项!
    ​Air780E是合宙低功耗4G-Cat.1模组经典型号之一,累计出货数量2000万+,广泛应用于物联网各行业。在此,特别感谢各位大佬的信任与支持。写这篇文档的目的是什么呢?从用户的角度,解答大家对Air780E这款模组最关心的问题;不深入探究技术细节,更多从选型、应用等非技术维度展开。阅读本......
  • 订单交易平台四:登录界面(使用Forms组件解决小bug)
    总任务:使用Forms组件解决用户输入错误、空,并且展示错误信息在输入框的下面解决用户校验,以及用户提交之后还可以将第一次输入的东西继续展示到页面1.示例1.1先导入forms第三方模块包,并且写入我们前端组要校验的字段```fromdjangoimportformsclassLoginForm(forms.F......
  • bugku media(未解出)
    url:https://ctf.bugku.com/challenges/detail/id/573.html附件2个文件一个misc1.png一个key.wav 既然是key.wav一定隐藏了什么东西查看没看到什么东西misc1.png尾部有一段附加数据,不知道有什么用. RjAgOUYgOTkgODMgRjAgOUYgOTIgQjUgRjAgOUYgOEMgQkYgRjAgOUYgOEUgQTQg......
  • 记一次控件提升后,运行却不显示的Bug
    .h文件#ifndefVOLUMETOOLBTN_H#defineVOLUMETOOLBTN_H#include<QToolButton>#include<memory>classVolumeToolBtn:publicQToolButton{Q_OBJECTpublic:explicitVolumeToolBtn(QWidget*parent=nullptr);~VolumeToolBtn()override;......
  • Debuggers 1012:Introductory GDB
    OpenSecurityTraining2LearningPaths:VulnerabilityHunting&Exploitationpython:https://www.learnpython.org/路径图:https://ost2.fyi/OST2_LP_Vulns_Exploits.pdfDebuggers1012:IntroductoryGDB(与python)-->Architecture1001:x86-64Assembly-->R......
  • python多进程debug
    代码调试问题阐述最近遇到一个pythondebug多进程的问题有一个进程A,这个进程会fork出8个进程B,forkjoin结束后,又会fork出8个进程A。假设按时间有序,我就只想断fork出的第一个B和第一个进程A,怎么做?(breakpointjustbreakonlyonce)类似于java多线程调试的意思,只断一个线程,all-......