chhch

这个应该可以使用分组函数可以解决。就是你想要非重复的那个字段,作为分组条件,但是要显示的其他列,控制起来可能有些费劲,不一定是显示多条数据中的哪一个

4天前

1回答·3浏览

慕田峪6411769

请问你数据库的主键,没有设置自增,是由自己维护是吗?注释上说“该类型为未设置主键类型(注解里等于跟随全局,全局里约等于 INPUT)”,是不是全局的主键策略配置的是由自己维护主键,如果是这样,自己生成主键,设置上就可以了。

5天前

1回答·20浏览

慕沐2237910

如果是非前后端分离的,一般把当前登录人信息存到session中,可以使用RequestContextHolder实现,我的新课程有讲解,课程地址:https://www.imooc.com/learn/1294,欢迎观看

2020-11-25

2回答·31浏览

weixin_Coney_0

在mp的官方文档中,有说明哪些会存在sql注入的风险,例如:last,还有apply的一种只用方式。官方文档地址:https://mybatis.plus/guide/wrapper.html

2020-11-20

2回答·42浏览

qq_功夫_1

自动填充类中,你调用的填充方法中,需要设置要填充的属性的类型,要和你实体类中待填充的属性的类型一致。

2020-11-12

1回答·90浏览

慕设计6522269

已采纳 老猿 的回答

看MP3.4.1版本对TenantLineHandler接口的注释,“获取租户 ID 值表达式,只支持单个 ID 值”。如果以官方的注释来判断,是不支持in的。

2020-11-10

1回答·51浏览

weixin_慕侠6298876

是的,如果使用了MP的逻辑删除,并且实体中使用了注解标识了逻辑删除字段。你还想物理删除,就得自定义sql了。但一般除了备份转移的场景下,好像没什么场景是逻辑删后还要物理删的。

2020-10-26

2回答·46浏览

慕村0539712

你试试,最新版MP的忽略方式,使用@InterceptorIgnore注解,在Mapper上,然后设置tenantLine=true,看看好不好使,是不是这个Mapper中的所有方法,都不增加租户信息。

2020-10-26

1回答·82浏览

weixin_慕哥6120633

我猜,应该是p6这个更强大,例如可以配置控制台输出,文件输出,输出格式等等,所以mp就提供了整合p6的方式,实现执行sql打印,不再维护自己的那个了。

2020-09-17

1回答·85浏览

慕粉1469969509

没有移除,只是高版本中,逻辑删除插件不需要我们自己配置了。

2020-08-22

2回答·216浏览

慕UI6045084

我看网上有实现的,就是自己写一个类似于P6SpyLogger的类,然后appender配置成你重新的这个类。

2020-08-14

1回答·95浏览

Holems

同学,你好,我怎么感觉这个事让你整复杂了呢,你上面这个需求order和order_today,我感觉写一个实体就可以了,到底在什么时候什么情况下查哪个表,在ITableNameHandler的实现类中编写逻辑,然后配置好就可以了。

2020-08-06

1回答·144浏览

Irregularity

同学,这个你就要看一看介绍雪花算法的原理的文章了,有很多,里面会告诉你它是如果保证不重复的,保证不重复是有一些限制条件的,满足限制条件,就可保证不重复。

2020-08-05

1回答·185浏览

慕移动4329804

抱歉,网站规定,免费课程不提供源码。我看有的同学,把参考我的课程编写的代码分享出来了,你可以在留言区或者评论区找一下。

2020-07-21

1回答·106浏览

qq_泰勒定理_0

请问,你使用的是mp的什么版本,如果存在这样的问题,那么应该是mp的bug,你可以在码云或github上反馈给官方。

2020-07-16

1回答·103浏览

慕先生5357798

请问,在实体中标识是否逻辑删除的属性,加@TableLogic注解了吗?如果没加需要加上。

2020-07-12

3回答·200浏览

欧尼桑1111

已采纳 老猿 的回答

应该不是叫不叫id的问题,是你的主键中也包含“user”字符串片段,他也给你替换了。这应该算是bug,你可以提给官方。

2020-06-27

2回答·148浏览

greamord

你在desc属性中增加@JsonValue注解,看看会不会达到你预期的效果。

2020-06-17

1回答·362浏览

慕粉4385183

已采纳 老猿 的回答

如果是web项目,可以这样写,但是别忘了,在使用结束时,要清空ThreadLocal变量,防止被线程池重用。web处理请求时,只要没处理完,当前处理请求的当前线程就不会释放,不会乱掉的。

还有一个处理办法,将动态表名放到request对象中也可以,然后再从request中取。

2020-06-01

2回答·201浏览

土木之殇

这个就得你手动抛出异常了,主要是看你想不想这么实现,就是调用update后,如果你用通用service中的update,返回false你就手动抛异常;如果用的是BaseMapper中的方法,返回的影响行数是0的话,手动抛出异常。

2020-05-29

2回答·232浏览

慕仰8533998

你这个问题,看着提示信息,应该不是程序的问题,而是因为数据库外键的问题,你删除所有数据,由于有的数据行有外键的约束,不允许你进行物理删除。

2020-05-26

2回答·214浏览

流光苍穹

已采纳 老猿 的回答

sql语句只要正确,应该都能写出来,你试试例如这样写是否可行UpdateWrapper updateWrapper = new UpdateWrapper<>();

updateWrapper.set("picPath","replace(`picPath`, '127.0.0.1', '192.168.0.1')");

2020-05-10

1回答·1276浏览

qq_慕丝3367668

如果还是不行,你把spy配置文件,和spring配置文件粘出来,我看看。

2020-05-08

2回答·166浏览

慕圣5267809

你是要多次复用QueryWrapper吗?使用乐观锁插件了吗?如果使用乐观锁插件,是不能多次复用QueryWrapper的。我一般是不会复用条件构造器的。

2020-05-07

1回答·1295浏览

慕勒2345720

同学,你好,你配置动态表名解析器了吗?如果配置了,你ITableNameHandler实现类中的dynamicTableName抽象方法的返回值,是你要替换的的表名吗?如果返回值为null不替换。

2020-05-07

1回答·196浏览

qq_慕函数7358014

同学,可以实现批量逻辑删除啊,首先你的实体中要有使用注解@TableLogic标识的字段,然后你调用BaseMapper中的如下方法,如果符合条件的行数大于一个,就是批量逻辑删除。int deleteByMap(@Param(Constants.COLUMN_MAP) Map columnMap);

int delete(@Param(Constants.WRAPPER) Wrapper wrapper);

int deleteBatchIds(@Param(Constants.COLLECTION) Collection extends Serializable> idList);

2020-04-29

3回答·281浏览

慕九州6391229

多表联查可以既使用xml或@select注解的方式写sql,然后还能使用MP的条件构造器,实现方式如下:

MP自带的CRUD操作是针对单表操作的,如果要操作多表,可以写自定义sql。

给你举个使用条件构造器的多表sql例子,可以写在xml中或注解中,下面的是用xml的写法:

select u.*,r.role_name from user u inner join role r on u.role_id = r.role_id ${ew.customSqlSegment}

对应的Mapper接口中的方法定义:List mySelectList(@Param(Constants.WRAPPER) Wrapper wrapper);

返回值可以是VO。也可以是实体类,但要要记住,如果用实体类接返回值,实体中非该实体对应表的数据库字段的属性上要标注@TableField(exist = false),如果使用了条件构造器,条件构造器的字段名别忘了带别名。

2020-04-28

1回答·383浏览

qq_慕丝3367668

setInsertFieldValByName有替代的方法,替代的方法为strictInsertFill

2020-04-27

1回答·376浏览

mybatis plus使用雪花算法_MyBatis-Plus进阶相关推荐

  1. mybatis plus使用雪花算法_11.雪花算法与精度丢失

    最近公司的一个项目组要把以前的单体应用进行为服务拆分,表的ID主键使用Mybatis plus默认 的雪花算法来生成. 快下班的时候,小伙伴跑过来找我,:"快给我看看这问题,卡这卡了小半天了 ...

  2. mybatis plus使用雪花算法_MyBatis-Plus入门

    weixin_慕神1349579 很抱歉,网站规定,免费课程不提供源代码.有的同学把参考我课程内容编写的代码分享出来了,你可以在问答评论区找找分享地址. 2020-12-07 1回答·16浏览 wei ...

  3. SpringBoot 雪花算法生成商品订单号【SpringBoot系列13】

    SpringCloud 大型系列课程正在制作中,欢迎大家关注与提意见. 程序员每天的CV 与 板砖,也要知其所以然,本系列课程可以帮助初学者学习 SpringBooot 项目开发 与 SpringCl ...

  4. 26:第三章:开发通行证服务:9:【注册/登录】接口:验证码校验OK后,先根据手机号去查查该用户是否已存在,如果用户不存在就创建这个用户;(tkmybatis查询构建查询条件,雪花算法,枚举类等等)

    说明: (1)本篇博客内容:继续开发[注册/登录]接口: ● 在[25:第三章:开发通行证服务:8:[注册/登录]接口:接收并校验"手机号和验证码"参数:]中,[注册/登录]接口, ...

  5. DefaultIdentifierGenerator 雪花算法 生成 重复 id 解决办法

    DefaultIdentifierGenerator 雪花算法 生成 重复 id 前言 问题发生 排查原因 问题解决 前言 利用 mybatisplus 的 DefaultIdentifierGene ...

  6. 雪花算法 Java 版

    雪花算法根据时间戳生成有序的 64 bit 的 Long 类型的唯一 ID 各 bit 含义: 1 bit: 符号位,0 是正数 1 是负数, ID 为正数,所以恒取 0 41 bit: 时间差,我们 ...

  7. Twitter的分布式雪花算法 SnowFlake 每秒自增生成26个万个可排序的ID (Java版)

    分布式系统中,有一些需要使用全局唯一ID的场景,这种时候为了防止ID冲突可以使用36位的UUID,但是UUID有一些缺点,首先他相对比较长,另外UUID一般是无序的. 有些时候我们希望能使用一种简单一 ...

  8. 改进型 clock 页面置换算法实现_ID生成算法雪花算法介绍及实现

    1. SnowFlake 算法介绍 雪花算法是由 Twitter 公司开源的可在分布式系统中产生一个全局唯一 ID 的算法.最初 Twitter 把存储系统从 MySQL 迁移到 Cassandra, ...

  9. php设置id递增,php实现雪花算法(ID递增)

    雪花算法简单描述: 最高位是符号位,始终为0,不可用. 41位的时间序列,精确到毫秒级,41位的长度可以使用69年.时间位还有一个很重要的作用是可以根据时间进行排序. 10位的机器标识,10位的长度最 ...

最新文章

  1. react源码分析-setState分析
  2. 打造自己的网络游戏[1]-Muddery安装与启动
  3. 交叉编译成windows版
  4. 2.3 线性变换引入
  5. 这个网盘下载60MB/s!PanDownload复活了!
  6. Qt文档阅读笔记-QGraphicsItem events解析与实例
  7. 【转载】ADS分散加载文件使用总结(lpc23xx)
  8. Unity Shader _Time 的单位
  9. 单片机软件开发心得体会
  10. UVa 437 巴比伦塔(The Tower of Babylon)
  11. 洛谷-P1428-小鱼比可爱
  12. 如何在笔试的时候绕开切屏提示
  13. Java实现XML格式化
  14. 机器人相关专家研究机构
  15. Luminati代理动态IP,海量资源可调用!
  16. 如何构建一个在线绘图工具:Feakin 是如何设计与构建的?
  17. 新买笔记本误删office2021解决方法
  18. Android 多窗口
  19. 打开PowerShell时,显示Windows找不到文件怎么办
  20. kdj超卖_KDJ指标的超买与超卖

热门文章

  1. Jpeglib使用指南, 各种压缩包的压缩和解压方法, 开源社区分裂史
  2. 【机器学习】线性回归之梯度下降、多元线性回归概述
  3. grep命令---Linux学习笔记
  4. Puppet 的部署与应用,看这一篇就够了
  5. CPU亲缘性及网卡中断绑定
  6. linux基础入门概念
  7. iis下安装Memcache
  8. 全国计算机技术与软件专业技术资格(水平)考试徽标
  9. [转]asp.net(c#)生成验证码 点击可刷新
  10. MySQL数据类型和Java数据类型对应关系表