自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 Java 使用websocket通信

2.前期使用http推送数据,客户端运行net开发语音播报工具,会出现运行一段时间锁死情况。1.页面开启,创建websocket通信通道,页面关闭,销毁通道。5.系统能开启浏览器页面就能使用,不会出现播报卡死等情况。4.可以调整播报速度,播报声音类型,音量大小等。2.后台通过websocket,定时推送数据。1.后端生成内容,推送前端进行语音播报。3.推送内推语音播报,可以播报内容。6.满足业务需求,提升系统运行效率。

2025-08-11 11:35:01 523

原创 Java 拦截器

拦截所有异常信息,统一返回异常消息。

2025-08-11 11:03:36 255

原创 Java多线程:ThreadPoolExecutor+BlockingQueue线程

消息定义成实体WorkEvent,放入WorkQueue中,然后由ExtThreadPoolExecutor线程池开启接收端线程WorkThread,由WorkThread获取消息,并通知实际需要者EventHandler,EventHandler处理消息。ExtThreadPoolExecutor作用是对线程池的增强,如在初始化线程池时、在线程执行前、执行后等处可添加自定义逻辑。通过BlockingQueue存放任务线程,该处使用生产者、消费者模式。消费者端,阻塞接收消息,并将消息传给实际需要者。

2025-08-11 10:54:51 188

原创 Java map和实体工具类

【代码】Java map和实体工具类。

2025-08-11 10:33:57 272

原创 java MQTT操作数据

4.同时创建多个mqtt客户端,每个客户端连接多个主题,系统运行效率很高。3.对存储数据库数据进行处理,完成后到相应页面展示。2.系统通过定时任务,从redis读取存入数据库。1.接入的数据,全更新到redis缓存。hivemq mqtt依赖。5.满足本系统业务功能所需。

2025-08-11 10:17:24 349

原创 Java springboot 使用redis操作数据

redis以及jdk安装目录 /usr/local。

2025-08-11 09:58:08 143

原创 set使用for循环的后果

项目使用数据库查key装入set,遍历set后,根据key从redis查数据,写入数据库。发现总有一些点,查不到,造成数据缺失。多次检查原因,发现是for循环遍历set导致。这会导致 ConcurrentModificationException 或数据丢失。总结:set是无序的,使用for循环遍历容易出问题;可以使用迭代器或者foreach遍历。正确示范:使用迭代器的 方法。

2025-03-08 11:16:23 265

原创 aop记录系统操作日志

1.定义注解,方便再要使用aop的地方切入操作日志。3.在需要操作日志记录的方法上,使用注解。2.aop操作类定义和逻辑处理。即可完成操作日志记录。

2025-02-11 08:58:08 603

原创 达梦数据库安全设置

可以通过sql设置用户登陆的ip地址,非设定的ip登陆时会报错提示无效的ip。对于采用静态口令认证技术的设备,应配置用户连续认证失败次数,锁定时间等策略。限制在DBA组中的操作系统用户数量,通常DBA组中只有DM安装用户。应为应用单独分配账号,避免应用使用dba用户,提高安全性。对于采用静态口令进行认证的数据库,应满足复杂度策略要求。不能以用户名作为密码或使用默认密码的账户登陆到数据库。删除或锁定无效的账号,减少系统安全隐患。根据业务要求制定数据库审计策略。更改数据库默认帐号的密码。

2025-01-23 10:49:07 727

原创 Java异常处理的重要性

最初一年运行正常,后面因为其他系统接口等原因影响,一些任务没拿到数据报错了,导致定时任务停止运行。异常非常影响程序运行,在合适的地方,合适的程序要考虑全面,处理好对应业务逻辑,程序才能运行好。仔细研究:发现有点报错了,异常没处理,扔到了线程池,占用了线程,不释放线程资源。开发在controller层进行了业务逻辑处理,捕捉了异常,事务回滚失败。一共有几十个定时任务要执行,有些任务捕捉处理了异常,有些任务没处理。仔细检查后,发现没做异常处理,报错后导致程序死机。时间久了,线程池资源耗费完,定时任务不再执行。

2025-01-23 10:10:26 802

原创 Java操作excel处理

07版本xssf,不限制,写很慢,耗时很长 sXssf 速度快,会生成临时文件,临时文件需要清楚。03版本hssf,最多65536行 先写入缓存,在写入磁盘,速度很快。参考资料:哔哩哔哩,搜索遇见狂神说,excel,poi等。综上:Java操作excel,完成。包分为:03,07,升级版本。学习,快速简单,避免oom。注意包含了poi的各种包。

2024-12-23 10:53:17 259

原创 Oracle的job锁死解决

HGK wL.fan che history distinc要删除的表里面有6百多万条数据ZHGK WL.FAN CHE HISTORY 要去重的表里面有4亿多条数据去重后几百万再写入表job执行了四年多,目前要1500多分钟才能执行完。job是30秒执行一次,最近一次job直接跑死。

2024-12-06 15:19:38 1604

原创 web断实现懒加载

前端vue + html+js,框架jpa,后端springboot+oracle 实现web端数据懒加载

2022-06-27 17:33:01 153

原创 2021-10-11

vue 自动刷新页面1.页面自动刷新:把如下代码加入区域中<meta http-equiv="refresh" content="20">其中20指每隔20秒刷新一次页面.2.js方法刷新<script language="JavaScript">function myrefresh(){window.location.reload();}setTimeout('myrefresh()',1000); //指定1秒刷新一次</script>.

2021-10-11 10:04:55 74

原创 2021-10-11

vue 的 watch 监听1,监听的数据是对象内的某一属性,直接watch对象的属性就会报错处理方法:监听对象内的某一具体属性,可以通过computed做中间层来实现computed: {  channel() {    return this.people.phone  }},watch:{channel(newValue, oldValue) {    console.log(‘new: %s, old: %s’, newval, oldVal)    //这里面可以执行一旦监

2021-10-11 09:31:25 70

空空如也

空空如也

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

TA关注的人

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