- 博客(103)
- 收藏
- 关注
原创 mybais/mybatis-plus中,%作为模糊查询匹配字符,生效的实现方式-模糊查询语句特殊字符转义拦截器
原文链接:https://blog.csdn.net/my_name_nb/article/details/123371345。mybatis/mybatis-plus中,%在sql中是作为关键字,在模糊查询时,作为匹配的字符时,不能起到数据过滤的作用,对数据做的是全查询。例如:通过姓名进行模糊查询,传入的姓名的值为%,若user中的username值中,没有一个包括%,则查询的数据为空。注意:在查询时,传入的字符为.或者-,在mysql中能成功过滤数据。这个就可以做到全局配置,且不影响现有代码。
2024-11-23 13:43:57
170
原创 CollectionUtil.split()的基本使用
将一个集合拆分为几个集合,拆分得到的集合作为一个新的集合的元素。在批量新增时,传入的对象过多,可以先对集合进行拆分,再新增。2100,查询时,传入作为过滤条件的个数也是2100个。SQL中批量新增时传入的参数个数的上限。注意:sqlserver的。
2024-11-18 16:34:46
88
原创 121、SQL Server取开始时间、截止时间
SELECT dateadd(ms,-3,DATEADD(mm, DATEDIFF(m,0,getdate())+1, 0)) 当月最后一天。SELECT dateadd(ms,-3,DATEADD(dd, DATEDIFF(dd,-1,getdate()), 0)) 当天结束。SELECT DATEADD(mm, DATEDIFF(mm,0,getdate()), 0) 当月第一天。dd,0,getdate()), 0)) 当天开始。
2024-11-14 15:52:04
473
原创 122、java的LambdaQueryWapper的条件拼接实现数据sql中and (column1 =1 or column1 is null)
LambdaQueryWrapper是Mybatis-Plus中的一个工具类,用于构造SQL查询条件。如果你想要实现类似于。在这个例子中,我们创建了一个LambdaQueryWrapper实例,并使用。这样的条件拼接,可以使用LambdaQueryWrapper的。// 假设有一个Mybatis-Plus的Mapper。// 省略其他字段和getter/setter方法。方法传入一个lambda表达式,该表达式内部使用。方法表示IS NULL条件,这两者使用。
2024-11-14 15:22:01
628
原创 从页面传入的查询条件%作为配置字符,进行模糊查询能成功过滤数据的实现方式:数据库sqlserver
注意,使用like或者like concat都不能成功过滤数据。SQL如下:select * from tb_user。例如:传入查询条件的实力类中,name属性赋值为%,
2024-10-25 15:09:32
82
原创 查询一张主表的多个字段并返回,同时需要并联合其他表返回一个主表和此表中都不存在的字段(使用exists)
数据表:tb_user(userid,name,age,sex,signstatus,signdate,phone)需求:查询用户的姓名,年龄,性别,本年度是否签约,本年度是否体检,电话。exists用于子查询,可提高查询的效率。
2024-10-16 15:44:48
238
1
原创 MySQL常用函数
date_sub(now(),interval -1 day) as '使用date_sub求当前日期后一天日期',date_format(now(),'%Y-%m') as '使用date_format将时间格式修改为:年月',date_format(now(),'%Y') as '使用date_format将时间格式修改为:年',date_format(now(),'%Y-%m-%d') as '使用date_format将时间格式修改为:年月日'作用:将一个列取出的数据类型转换成目前需要的数据类型。
2024-09-19 17:49:39
429
原创 xml中SQL执行错误(使用另外一张表的两个字段,组装SQL的where查询条件)
SQL实现功能描述:根据系统设置中的商店到期提醒周期、单位,在过期提醒的列表中,对数据进行周期展示。//报错原因:mybatis中的Page分页不能与xml中定义变量同时,实现数据的分页查询。同时,service中调用mapper中的接口后,并且手动分页。//修改:mapper中的接口。
2024-09-12 15:45:17
404
原创 使用Fign进行客户端远程调用和SpringFormEncoder的使用
先配置生成了SpringFormEncoder的bean对象,然后在@FeignClient注解中配置configuration值来修改默认Encoder。这里使用的并不是spring标准的encoder配置,
2024-09-05 09:44:44
545
原创 java修改mybatis中某条记录的时间类型的字段(存有时间格式的值)为null
注意:java将mybatis中其他类型字段设置为空,也可以在po的@TableFiled上加上(updateStrategy=FieldStrategy.IGNORED)属性。再在java中将需要置空的字段设置为null(如:old.setDieReason(null),数据表中的类型为:varchar(100))//在代码执行后,原有的死亡时间仍旧存在,没有为空;导致:sql中没有接收到为死亡时间为空sql语句(set CSWSJ=NULL)原因:在更新时,java直接对时间字段赋值为null。
2024-08-30 13:51:12
198
转载 Java stream使用流进行多字段排序
如果只进行单个字段的升序降序排列,我们使用reversed()或者都可以如果要进行多个字段的升序降序排列,Comparator.comparing().thenComparing()
2024-08-30 10:27:22
87
转载 Java Stream流 List< T >转换Map方法汇总合集
当存在重复 key 时,编译器会报错:java.lang.IllegalStateException: Duplicate key xxxx;当 value 为空时,使用 toMap() 方法进行转换,编译器会抛出 java.lang.NullPointerException;List泛型为 Student 对象,示例需要将name属性作为 key, Student 对象作为value;List泛型为 Student 对象,示例需要将name属性作为 key,age 属性作为value;
2024-08-30 10:13:26
139
原创 集合中元素根据某个属性判断在另一个集合中是否存在,存在则过滤掉这个元素
【代码】集合中元素根据某个属性判断在另一个集合中是否存在,存在则过滤掉这个元素。
2024-08-16 17:27:11
119
原创 95、开发中报错信息:Parameter ‘__frch_item_0‘ not found. Available parameters
1. 检查报错方法体内,是否采用了@Param注解import org.apache.ibatis.annotations.Param;,但是你更新了po类中的update_time字段,但是在你的mapper中foreach的时候并没有进行修改。3. 检查forEach中的item中所修饰的Demo的字段是否进行改变,也就是这是否是你之前编写的代码。2. 检查在标签中的collection属性中是否与list一致。能正确查询,不会报错,目前不明白错误发生的原因。
2024-07-30 17:45:25
468
原创 try,catch中的嵌套和全局异常的基本使用
*** 结果状态的枚举*//*** 成功 200*/SUCCESS(0, "成功"),SUCCESS_FIND(0, "查询成功"),SUCCESS_CRUD(0, "更新成功"),//操作失败failedFAILED_CRUD(-1, "操作失败"),/*** 数据验证有关 -- 3000**/UN_DATA(30001, "没有数据"),PARAM_ERROR(30002, "参数不正确"),
2024-07-27 15:48:11
484
原创 77.MySQL的分页查询
例如,要从mark_info表中选择选择最新创建的第11到第20个工单的信息,可以执行以下查。使用java在xml中进行分页,需要使用另一个mapper接口进行查询的总条数查询。SELECT * FROM 表名 LIMIT 行数 OFFSET 偏移量;SELECT * FROM 表名 LIMIT 行数 , 偏移量;关键字用于指定从结果集的哪一行开始返回数据。SELECT * FROM 表名 LIMIT 行数;关键字用于限制返回结果集中的行数。一起使用,以实现分页效果。这两写法效果是一样的。
2024-07-11 20:02:11
237
原创 73.SQLSERVR的SQL实现分页查询的SQL(三种方式)
这种方式也是比较常用的,直接利用row_number() over(order by id)函数计算出行数,选定相应行数返回即可,不过该关键字只有在SQL server 2005版本以上才有。先top前11条行记录,然后利用max(id)得到最大的id,之后再重新在这个表查询前10条,不过要加上条件,where id>=max(id)。offset 10 rows ,将前10条记录舍去,fetch next 10 rows only ,向后再读取10条数据。-- 子查询,多加一个rownumber列返回。
2024-07-11 20:00:20
671
原创 82.Jdk1.8中Collectors.joining()
在Java Stream API中,Collectors.joining()方法用于将流中的元素连接成一个字符串。这个方法接受一个可选的前缀和一个后缀作为参数,以及一个分隔符,用于连接流中的各个元素。方法还可以接受前缀和后缀作为参数,以便在连接字符串时添加额外的字符。作为参数来连接流中的元素。最终,我们得到一个由逗号和空格分隔的字符串。在这个示例中,我们创建了一个包含四个字符串的列表。将一个流中的元素转换成一个格式化的字符串,并给字符串加上前后缀。将一个流中的元素转换成一个格式化的字符串。
2024-07-11 19:55:48
192
原创 83.JAVA中常见时间格式判断一个时间是否在另一个时间之前、之后
与需要判断的业务数据的时间进行比较,判断数据是否过期(也可以使用。与需要判断的业务数据的时间进行比较,判断数据是否过期(也可以使用。与需要判断的业务数据的时间进行比较,判断数据是否过期(也可以使用。LocalDateTime.now()获取当前时间,再使用。LocalDate.now()获取当前时间,再使用。new Date()获取当前时间,再使用。
2024-07-11 19:50:17
314
原创 80.使用定时器schedure实现数据过期提醒,并且修改数据对应的状态
"表示每月最后一天的23点执行,"0 0 23?* L"表示每周六的23点执行,"0 0 23?* 7#5"表示每个月第5个周六6:30:15执行,如果某个月不存在第5个周六,则不执行。* *"表示每天的9:30-15:30每小时执行一次,"0 1-5 *?"表示每天3点开始执行,每隔5个小时执行一次,即3点、8点、13点、18点、23点各执行一次,"表示每隔5秒钟执行一次,"0 */1 * * *?6 星期(1~7 1=SUN 或 SUN,MON,TUE,WED,THU,FRI,SAT)
2024-07-11 19:46:59
839
原创 73.在处理sqlserver中传入的参数个数超过2000,使用临时表加分批处理时,遇到临时表对象无效的错误
报错原因:直接使用上一个SQL创建的临时表,(实际上,临时表的生命周期已经介绍)改正:重新执行创建临时表的语句,再将临时表联合查询。2.1注意临时表的生命周期。2.临时表使用注意事项。
2024-07-08 14:40:25
298
原创 mybatis-plus中last和orderBy的连用的使用顺序
condition:用于指定当前这个条件是否有效;如果为 true,则应用当前条件;如果为 false,则忽略当前条件。可以先调用 orderBy 指定排序规则,然后调用 last 添加自定义的SQL片段。在MyBatis-Plus中,last 方法用于在构建查询时添加自定义的SQL片段,1. mybatis-plus中last和orderBy的连用的使用顺序。只能调用一次,多次调用以最后一次为准 有sql注入的风险,请谨慎使用。lastSql:要追加到 SQL 后面的 SQL 语句。
2024-07-07 17:54:06
720
转载 SQL中UNION 和 UNION ALL的基本使用
总结来说,UNION 去除重复行,而 UNION ALL 不去除重复行。你可以根据自己的需求选择合适的操作符来合并查询结果。UNION 和 UNION ALL 是用于合并两个或多个 SELECT 查询结果的操作符。UNION ALL 操作符也用于合并两个或多个 SELECT 查询的结果,但。UNION 操作符用于合并两个或多个 SELECT 查询的结果,如果两个查询的结果集中有相同的行,则只会返回一个。它会返回所有满足条件的行,包括重复的行。
2024-07-04 15:24:53
131
原创 70.Bug:使用list.sort(Comparator.Comping(User::getCreateTime).reverse())空指针异常
缺少:
2024-07-04 15:13:03
809
原创 66.前端接口调用返回400的错误
未授权:如果API需要认证,而客户端没有提供有效的凭证,服务器可能会返回400 Bad Request错误。资源不存在:如果客户端尝试访问的资源在服务器上不存在,服务器可能会返回400 Bad Request错误。请求过大:如果客户端发送的请求体太大,服务器可能会返回400 Bad Request错误。错误代码400通常表示由于无效的请求导致服务器无法处理请求。语法错误:客户端发送的请求可能存在语法错误,例如缺少必需的参数、格式不正确等。解决方式:使用Post请求,与@RequestBody联合使用。
2024-06-28 16:52:28
912
原创 63.微服务调用Feign接口的get请求时,出现报错:java.lang.IllegalArgumentException: method GET must not have a request
在参数前边使用@PathVariable注解。
2024-06-27 17:46:38
271
原创 mysql中存储过过程和游标的联合使用
2.Mysql中关于 错误 1366 - Incorrect string value: ‘\xE5\xBC\xA0\xE4\xB8\x89‘ for column ‘name‘ at row 1。方法二:SQL查询:SHOW FULL COLUMNS from tb_user;2.修改数据库的字符集编码HeidiSQL()修改字符集编码与报错字段的字符集编码相同。改正方式:把自定义变量放到定义游标之前。原因:把自定义变量定义在定义游标之后。1.使用出现问题的字段的字符集编码。
2024-06-23 13:45:29
485
原创 java调用第三方接口方法
查询测试:(三方接口描述:查询用户信息)(三方接口描述:保存用户信息)(三方接口描述:保存用户信息)调用的第三方接口代码。
2024-06-22 21:33:16
1230
原创 java中Object和json相互转换的方式
ObjectMapper o=new ObjectMapper();Listlist=new ArrayList();String jons=o.writeAsValueString(list);
2024-06-22 20:25:10
1569
1
原创 56.SQLSERVER中字段,变量判断为空和空字符串
set @r='数据为:'+ @r。begin 和 end 不写也是可以。set @r='数据为:'+ @r。set @r='数据为:'+ @r。set @r='数据为:'+ @r。set @r='暂无数据'set @r='暂无数据'set @r='暂无数据'set @r='暂无数据'(2)是否为空字符‘’//结果为:暂无数据。(2)是否为空字符‘’
2024-06-20 15:49:36
1045
原创 59.SQLSERVER中自定义函数的基本使用
ASBEGINBEGINENDIF @VisitTypeName='门诊'ELSE IF @VisitTypeName='家庭'ELSE IF @VisitTypeName='电话'ELSEENDSelect GetVisitTypeCode(‘2024-01-23(家庭)’) 输出结果:1。
2024-06-20 15:46:31
361
原创 52.@NotNUll,@NotBlank,@NotEmpty的使用区别
NotNull(message = "id不能为空", groups = {Group.Edit.class, Group.Delete.class, Group.Detail.class})@NotBlank(message = "场景名称不能为空", groups = {Group.Create.class, Group.Edit.class})@NotEmpty(message = "设备编码不能为空", groups = {Group.Edit.class})
2024-06-14 14:00:10
373
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅