自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(16)
  • 收藏
  • 关注

原创 对象转化成JSON格式后时间格式变成时间戳处理

第一反应是谁改了框架的时间格式(因为代码都是自己写自己维护的,不存在别人动我代码,改我参数类型的情况),我用的LocalDateTime类型,看了框架没有变更,于是开始排查问题。小编在实现功能的时候遇到一个奇葩问题,对象转化成JSON后刚开始没啥问题,过两天后JSON中的时间格式莫名变成了时间戳,因为之前遇到过类似的。debug看到的数据没有问题,打算日志打印的日期格式就变成了时间戳了,于是问题定位到对象转化JSON这里。最后网上看到该问题的解决办法,然后问题得到完美解决。在此记录防止下次再犯。

2024-08-09 10:39:43 453

原创 拿来主义——WebSocket多人聊天室和聊天列表实现

当有用户在聊天室发送消息时,消息正常推送,同步调用聊天室列表推送消息,通过所有房间在线人数和用户所属聊天室关系过滤,找出对应聊天室需要推送未读消息的在线用户。最近领导让做一个多人聊天功能,小编抠脑壳硬是半天没写出来个所以然,于是网上找了个多人聊天室Demo改出来一款基于SpringBoot实现的实用性较强的聊天室功能(也适用于单人聊天)。:总共用两个连接,一个用于聊天室消息监听,一个用于监听聊天室列表未读消息。调用顺序:先连接聊天室列表,再连接聊天室。roomId -> 聊天室id。

2024-08-06 16:09:33 614 1

原创 Mysql数值用BigDecimal接收报错

在数值超过三位数后就会有逗号隔开,这时候在java映射过去转化为BigDecimal时就会显示格式不正确,后来使用。手写的SQL在Navicat上可以正常运行,但是在代码里面就会报错,排查发现是因为使用的保留小数的函数。函数替换问题得到解决。

2024-04-08 20:03:25 315

原创 前后端分离自定义参数序列化后,swagger打开报404

本篇主要讲述两个问题1、前后端分离项目中的传参接收为NULL的处理2、传参处理完成后swagger打开报“Whitelabel Error Page No mapping found for HTTP request with URI [/doc.html] in DispatcherServlet with name dispatcherServlet”错。

2024-03-20 18:04:26 1482

原创 保姆级爬虫无水印视频大全 最新版java+selenium

抖音、快手视频无水印爬虫,以及通过请求网页获取html页面数据

2023-12-27 20:05:11 1766 2

原创 Junit单元测试

对于Junit单元测试,可以使用本地的junit插件,也可以添加依赖使用,因为本地插件使用不够灵活,所以个人推荐使用junit依赖,使用Junit4对于待测试的类,移动光标到类名,按Ctrl+Shift+T选择新建测试类//功能类public class Demo { public int add(int a, int b){ return a + b; } public int sub(int a, int b){ return a - b;

2021-11-26 18:38:25 319

原创 List集合内字段大小比较

重写compare方法的比较:升序:o1>o2,return 1 或 o1<o2,return -1降序:o1>o2,return -1 或 o1<o2,return 1//实体类static class User{ private Integer age; private Integer score; @Override public String toString() { retu

2021-11-25 14:40:00 1212

原创 int,long,String,cron和Date格式的相互转化

//int时间类型转化为String格式日期输出 //注意转化过来的时间不能直接用转化成int类型,因为时间是13位长度,而int类型长度为10,必须经过处理再接转化,否则获取时间戳的时间会出错 int time = (int) System.currentTimeMillis(); String intDate = DateUtils.format(time, "yyyy-MM-dd HH:mm"); System.out.p...

2021-11-20 17:17:34 763

原创 DEBUG StatusLogger org.slf4j.helpers.Log4jLoggerFactory is not on classpath

早上多bugdebug运行代码时点了一个按钮结果导致Log4j日志无法正常运行DEBUG StatusLogger org.slf4j.helpers.Log4jLoggerFactory is not on classpath.Good!看图。。。

2021-11-18 09:54:18 3535 1

原创 思路清晰的MySQL常用语句进阶

删除表中重复的数据且仅保留一条注:为了演示SQL语句下面以product表为例,删除重复name字段。DELETE FROM product WHERE name IN( SELECT * FROM ( SELECT name FROM product GROUP BY name HAVING count( name ) > 1 ) a )AND id NOT IN( SELECT * FROM ( SELECT min( id ) AS id FROM product GROUP BY

2021-11-16 17:19:07 730

原创 Mybatis框架中UnsatisfiedDependencyException错误

人在公司坐,bug天上来之一觉醒来项目无法运行大清早上班代码运行报错,刚开始按照UnsatisfiedDependencyException错误提示的Mapper文件中实体类Bean文存在排查,由于IDEA显示Spring自动装配失败(代码无误,系统报错),误以为是装配出现问题,于是给Mapper文件添加**@Repository**注解(该注解作用是告知 Spring,为此类创建一个实现类,作为Bean注入到相关类)。发现问题依旧,查阅资料之后仍然误解,抓狂之际看到报错字段最后一行,关于某个Mappe

2021-11-12 21:07:08 1309

原创 InvalidClassException异常

这类问题属于序列化时反序列化偶尔出现的异常导致造成的,其根本原因在于本地IDEA连接测试易常出现版本可能不兼容导致造成的。SerializationExceptionInvalidClassException一般情况下会报这两种错误解决方案:只需要在相关实体类上使用serialVersionUID注解保证版本升级时反序列化仍保持对象的唯一性即可(如图)。public class Entity implements Serializable { private static final

2021-11-10 22:46:37 1991

原创 抽奖活动不同概率实现

说道抽奖活动,首先肯定会想到Random的使用,在整数和小数之中取随机数需要注意的是nextInt()和nextDouble(),前者是有参函数,后者是无参函数(如下):int random = new Random().nextInt(10);double randomIndex = new Random().nextDouble();前者表示从0-10之间取任意随机数;后者表示在0-1之间取任意小数,如果需要取得指定范围内小数,可进行如下操作:double randomIndex = new

2021-11-03 22:03:46 643

原创 数据库中查询有结果,代码运行返回对象为null

小白上路,开车不稳之——Mybatis中使用查询语句SELECT进行编写,返回对象中个别数据为null当遇到这个bug时,小白刚开始又以为自己写出bug,于是检查代码和SQL语句出错,反复检查后确定没有问题。思考一小时有余仍然没有头绪。于是上网搜索找类似问题,有关于实体类和返回结果不一致导致的,有说resultType和resultMap不能同时用的。最终发现本质原因在于mybatis中的返回结果使用的区别:即Resultmap和Resulttype的区别。进mybatis官网发现这段话:(深邃难懂

2021-10-28 19:49:40 4219 2

原创 分页查询数据重复——第三种情况

小白的上班常态:每天不是玩bug就是被bug玩,每天痛并快乐着干货:分页查询数据重复的情况,一般原因:1.order by 排序字段不是唯一主键或者有重复数据导致造成;2.在翻页过程中有新数据插入导致数据读写冲突导致造成解决办法:1.使用order by 排序时,加上主键或者不会重复的字段(一般建议唯一主键,如果选择时间字段,数据量过大时,有可能会重复,导致分页数据乱序或重复);2.如果每页数量固定,可以在前段传入数据时,主键部位设置为自增id,避免插入数据之后导致传值不变,而数据库实际增加,导致的

2021-10-21 19:57:30 6078 5

原创 常见排序总结

首先我们应该了解常用的七种比较排序有:直接插入排序,希尔排序,选择排序,冒泡排序,堆排序,快速排序,归并排序,它们都属于内部排序。除此之外还有常见非比较排序(外部排序):基数排序,桶排序,计数排序。内部排序:指在内存上进行的排序。外部排序:数据在外村上进行排序通常采用化整为零,使用递归实现的方法。求得函数运行时间:利用运行时间差进行计算(如下):对于随机生成数字 ,给出的结果为大概范围,每次的运行结果和取值有关。...

2021-05-19 10:48:14 171

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除