详解mybatis plus使用insert没有返回主键的处理_mssql2008

来源:脚本之家  责任编辑:小易  

#这个符号,在汉语,通2113常以其外观唤它为“井号”5261或“井字”4102。在英语,Unicode建议称为 number sign,可能1653因为它常用于表示序数,日语称它为“番号记号”。通常见于手机拨号键盘,也用于在网页上代替邮箱中的 @ 符号防止被抓取以起到保护邮箱的作用。另一个常用于表示序数的符号是№。$是美元符号,表示美元。美元是美国的货币名称。美元纸币正面主景图案为人物头像,主色调为黑色。背面主景图案为建筑,主色调为绿色,但不同版别的颜色少有差异,如1934年版背面为深绿色,1950年版背面为草绿色,1963年版背面均为墨绿色。上面的签名是财政部长的签名,不同发行年代是不同的财政部长。美元纸币是采用棉纤维和麻制成的。棉纤维长使纸张不易断裂,吸墨好、不易掉色。麻纤维结实坚韧,使纸张挺括,经久流通不起毛,对水、油及一些化学物质有一定的抵抗能力。美元纸张中没有添加增白剂,呈本白色,在紫光灯下不反光。自1880年起,美钞纸张内夹有红蓝纤维丝,这种纤维丝是在造纸时掺入纸浆的。因此,纤维丝有的夹在纸中,有的浮于表面,用针尖可以把纤维丝挑出来。1928年以前,红兰纤维丝分布在钞票的正中,由上至下狭长的一条。1928年及以后各版,纤维丝漫布全版。1990年起,美元纸张中(人像左侧)加入了一条被称为“迈拉”的聚酯类高分子物质制成的安全线,安全线上有美元符号及面额数字,迎光透视清晰可见。美元正面油墨为黑色稍深,略带灰色,背面为绿色。1934年以后各版,油墨中添加了磁物质,具有磁性真美钞采用荧光油墨和磁性油墨等专用油墨特制,故美钞正面右侧的绿色徽记和绿色号码,在白纸上用力擦拭后,纸上能留下“绿痕”。1996年以后发行的部分美元会随光线角度不同而显示一会黑一会绿。美元的主要图案是雕刻凹版印刷,库印及连号等为凸印。1990年版以后,下面肖像窗周围加有缩微文字。希望我能帮助你解疑释惑www.zgxue.com防采集请勿采集本网。

项目使用springboot搭建。最初的时候是使用mybatis,后来升级到mybatis plus。按照mp的官网介绍,使用mp的insert方法,对于自增的数据库表,mp会把主键写入回实例的对应属性。但实际操作起来,却没有主键。

entity 类设置如下:

@TableName(value = "USERINFO")public class UserInfo { /** * 指定自增策略 */ @TableId(value = "user_id",type = IdType.AUTO) private Long userId; private String gender; private Date birthday; private String phone;//省略后面的其他属性和getter/setter}

dao 类设置如下:

@Repository@Mapperpublic interface UserInfoDao extends BaseMapper<UserInfo> { // int insert(UserInfo record); int insertSelective(UserInfo record); UserInfo selectByPrimaryKey(Long logId); int updateByPrimaryKeySelective(UserInfo record);}

Service类调用userInfoDao的insert方法(此方法是来源于BaseMapper)。但是insert成功后没有返回主键userId。上网查了下,其他人都是这样设置,就会有主键返回。

看到dao类里面一条注释,// int insert(UserInfo record); ,心里有个想法。

这条注释对应的insert方法,是使用mybatis generator生成的。但是因为此方法名和mybatis plus的通用方法名一样,所以我把它注释了。会不会是因为dao对应的mapper.xml文件,里面的id = inesert的sql语句依然存在,从而覆盖掉了mybatis plus的通用insert,所以没有自动返回主键。

点进去对应mapper.xml文件,果然看到<insert id="insert">的sql语句。删掉该语句,重试mybatis plus的insert方法,这次有主键返回了。

到此这篇关于详解mybatis plus使用insert没有返回主键的处理的文章就介绍到这了,更多相关mybatis plus insert没有主键内容请搜索真格学网以前的文章或继续浏览下面的相关文章希望大家以后多多支持真格学网! 您可能感兴趣的文章:使用mybatis-plus的insert方法遇到的问题及解决方法(添加时id值不存在异常)关于使用Mybatisplus自带的selectById和insert方法时的一些问题

mybatis中的#和$的区别2113#相当于对数据 加上 双引号,5261$相当于直接显示数据1. #将传入的数4102据都1653当成一个字符串,会对自动传入的数据加一个双引号。如:order by #user_id#,如果传入的值是111,那么解析成sql时的值为order by "111", 如果传入的值是id,则解析成的sql为order by "id".2. $将传入的数据直接显示生成在sql中。如:order by $user_id$,如果传入的值是111,那么解析成sql时的值为order by user_id, 如果传入的值是id,则解析成的sql为order by id.3. #方式能够很大程度防止sql注入。4.$方式无法防止Sql注入。5.$方式一般用于传入数据库对象,例如传入表名.6.一般能用#的就别用$.MyBatis排序时使用order by 动态参数时需要注意,用$而不是#字符串替换默认情况下,使用#{}格式的语法会导致MyBatis创建预处理语句属性并以它为背景设置安全的值(比如?)。这样做很安全,很迅速也是首选做法,有时只是想直接在SQL语句中插入一个不改变的字符串。比如,像ORDER BY,可以这样来使用:ORDER BY ${columnName}这里MyBatis不会修改或转义字符串。重要:接受从用户输出的内容并提供给语句中不变的字符串,这样做是不安全的。这会导致潜在的SQL注入攻击,因此不应该允许用户输入这些字段,或者通常自行转义并检查内容来自www.zgxue.com请勿采集。


  • 本文相关:
  • sql server 2008 r2——查找最小nindex,nindex存在而nindex+1不存
  • 深入sqlserver2008 数据库同步的两种方式(sql job)的分析介绍
  • linux编译mssql扩展使用php连接sqlserver2008的使用步骤
  • win2008 enterprise r2 x64 中安装sql server 2008的方法
  • sql 2008 还原sql 2005备份文件不成功的解决方法
  • java之file对象对文件的操作常用的几个方法(推荐)
  • sql server 2008 中三种分页方法与比较
  • sqlserver2008使用表达式递归查询
  • sql server 2008网络协议深入理解
  • sql server 2008中的代码安全(三) 通过passphrase加密
  • MyBatis中#和$的区别详解
  • MyBatis中#和$的区别详解
  • 为什么spring data jpa 的Query注解 不能解析SQL语句
  • 为什么spring data jpa 的Query注解 不能解析SQL语句
  • 网站首页网页制作脚本下载服务器操作系统网站运营平面设计媒体动画电脑基础硬件教程网络安全mssqlmysqlmariadboracledb2mssql2008mssql2005sqlitepostgresqlmongodbredisaccess数据库文摘数据库其它首页使用mybatis-plus的insert方法遇到的问题及解决方法(添加时id值不存在异常)关于使用mybatisplus自带的selectbyid和insert方法时的一些问题深入sqlserver2008 数据库同步的两种方式(sql job)的分析介绍linux编译mssql扩展使用php连接sqlserver2008的使用步骤win2008 enterprise r2 x64 中安装sql server 2008的方法sql 2008 还原sql 2005备份文件不成功的解决方法java之file对象对文件的操作常用的几个方法(推荐)sql server 2008 中三种分页方法与比较sqlserver2008使用表达式递归查询sql server 2008网络协议深入理解sql server 2008中的代码安全(三) 通过passphrase加密sql server 2008完全卸载方法(其sql server 2008 安装和配置图解在与 sql server 建立连接时出现sql server 2008 r2 超详细安装图安装sql server 2008时的4个常见sql server 2008登录错误:无法连sql server 2008 阻止保存要求重sqlserver 2008将数据导出到sql脚sql server 2008 清空删除日志文图文详解sql server 2008r2使用教windows7下microsoft sql server 2008安装microsoft sql server 2008 基本安装说明sql server 2008 精简版(express)+managesql server 2008安裝图文教程sqlserver 2008 r2中使用cross apply统计sql server 2008 express远程登录实例设置基于vue 兄弟组件之间事件触发(详解)sql2008安装后服务器改名造成名称不一致解sqlserver2008新实例远程数据库链接问题(卸载sql2008遇到问题(重启计算机失败、找
    免责声明 - 关于我们 - 联系我们 - 广告联系 - 友情链接 - 帮助中心 - 频道导航
    Copyright © 2017 www.zgxue.com All Rights Reserved