自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(259)
  • 资源 (4)
  • 收藏
  • 关注

原创 JAVA springboot Access-Control-Allow-Origin

也就是说,只有当你的请求是通过浏览器发起的(比如前端 JavaScript 使用 fetch 或 XMLHttpRequest),这个头才会起作用。只有来自https:/your-domain.com的前端页面(即请求的来源 Origin 是这个域名),才能通过浏览器发起跨域请求访问这个接口。https://epos.whbswdt.com/xxx  也被允许(路径不影响)https://www.epos.whbswdt.com  子域名不同,也不被允许。区分大小写 & 完全匹配。

2025-06-06 09:52:38 174

原创 Springboot从consul中获取配置

3、在http://127.0.0.1:8500页面的 key/value 新建文件夹 /config/your-service/2、新增 bootstrap.yml ,springboot版本低于3.3是优先读取bootstrap.yml的配置的。Springboot项目如何实现一启动就读取consul配置的信息如数据库连接。以下是实现步骤:(Springboot版本是 2.2.5.RELEASE)然后再建一个名叫data的key,设置yaml配置。启动后可以验证下启动端口是不是consul配置的端口。

2025-05-22 15:22:00 293 1

原创 Linux Systemd 管理java服务

systemd 是现代 Linux 发行版中用于初始化系统并管理服务的主要工具。通过创建一个 .service 文件来定义您的 Java 应用程序服务。1、创建一个服务单元文件,例如 /etc/systemd/system/my-java-app.service。2、刷新 systemd 配置:sudo systemctl daemon-reload。3、启动服务:sudo systemctl start my-java-app。

2025-05-22 14:57:50 248

原创 JAVA8怎么使用9的List.of

在 Java 8 中,List.of 方法并不可用,因为这是从 Java 9 开始引入的用于创建不可变列表的便捷方法。要在 Java 8 中达到类似的效果,您需要使用其他方式来创建列表。常规的方法是先创建集合对象然后再添加元素。1、使用Arrays.asList。

2025-05-22 10:43:38 483

原创 Linux /etc/rc.d/init.d/

在传统的 SysV init 系统中,服务启动脚本通常位于 /etc/rc.d/init.d/ 目录下。这些脚本可以直接执行以启动、停止或重启服务,并且可以接受参数如 start, stop, status 等。如果你想知道位于 /etc/rc.d/init.d/ 目录下的某个脚本文件实际上指向哪里,如果你想获取符号链接的目标而不关心其他信息,可以使用 readlink 命令。这对于脚本编写特别有用。

2025-05-19 11:14:08 185

原创 记录一个空指针的异常排查

(2) i.getSrvBegin() 返回 null。(3) i.getSrvEnd() 返回 null。(4) 字符串长度不够这个不是空指针异常,这个排除。点击这个单据,有时候却是正常的,没出现空指针的情况。(2) i 的srvBegin 值也不是空的。(3) i 的srvEnd 值也不是空的。1、加同步锁 synchronized。这就感觉很奇怪了,有点莫名其妙,😖。那么猜测出现问题的原因可能是。(1) i 为 null。(4) 字符串长度不够。(1) i 不是空的。3、设计为不可变对象。

2025-04-30 09:45:13 286

原创 为什么大多数JAVA应用不需要进行JVM优化

6. 性能监控和动态调整的能力通过使用性能监控工具(如 JVisualVM、JProfiler、Prometheus 等),可以实时观察 JVM 的运行状态,并根据实际需求进行动态调整,而不是一开始就进行复杂的调优。大多数 Java 应用程序不需要进行 JVM 优化的原因主要在于以下几个方面:1. JVM 本身的优化能力JVM(Java Virtual Machine)经过多年的发展,已经成为一个高度优化的运行环境。•JVM 调优可能会引入新的问题,例如内存泄漏、GC 暂停时间增加等,增加了调试的难度。

2025-04-29 17:31:40 395

原创 JAVA 枚举类的ordinal用法

通过上述方法,你可以根据 ordinal 值找到具体的枚举值,但请务必注意其潜在的风险并采取相应的预防措施。在这个例子中:BusinessType.TYPE_A.ordinal() 返回 0。BusinessType.TYPE_B.ordinal() 返回 1。BusinessType.TYPE_C.ordinal() 返回 2。或者如果枚举有特定的属性,可以遍历枚举实例来匹配这些属性值。2、values() 返回该枚举类型的所有实例的一个数组。1、.ordinal() 返回该枚举常量的序数。

2025-04-29 17:24:24 398

原创 Java \n使用注意事项

1、判断是否有换行符用indexOf,这里面用的是 \n。2、拆分正则表达式, 这里面用的是 \\n。\n是一个转义字符,表示换行符。

2025-03-11 10:12:45 293

原创 SQL 中为什么参数多了not in 比 in 慢多了,怎么优化

当参数比较少的时候还看不出来什么,但是遇到参数上了几百几千,那么 in 受的影响不大,not in 查询的结果就超级慢了。那么什么原因导致NOT IN 可能比 IN 慢很多呢?2. NULL值的影响。1. 逻辑复杂度不同。

2025-03-03 14:38:23 394

原创 JAVA实体类生成MYSQL创表语句

【代码】JAVA实体类生成MYSQL创表语句。

2025-03-03 11:23:40 367

原创 java 上传图片压缩成图标大小并用base64存储

1、引入压缩图片依赖。2、编写代码实现功能。

2025-02-24 11:11:18 193

原创 Illegal mix of collations (utf8mb4_unicode_ci,IMPLICIT) and (utf8mb4_general_ci,IMPLICIT) for opera

这个错误信息表明在执行SQL查询时,您尝试比较两个字段或值,但这些字段或值使用了不同的字符集校对规则(collation)。具体来说,一个是 utf8mb4_unicode_ci,另一个是 utf8mb4_general_ci。MySQL不允许直接比较具有不同校对规则的字符串,除非明确地转换它们中的一个。如果合适,可以考虑将所有相关列的校对规则统一。您可以在SQL查询中使用 COLLATE 关键字来强制其中一个操作数使用特定的校对规则。1. 修改查询以显式指定校对规则。2. 更改表结构中的校对规则。

2025-02-18 15:27:37 812

原创 Uniapp扫普通二维码、小程序码、公众号消息携参数进小程序页面参数传递接收

如链接 https://www.example.com/miniapp?Uniapp开发的小程序接收扫普通二维码、小程序码、公众号消息携参数进小程序页面参数各是怎么样呢?3、公众号消息携参数。

2025-02-13 10:12:40 610

原创 HTML中如何保留字符串的空白符和换行符号的效果

有个字符串 储值门店{{thing3.DATA}}\n储值卡号{{character_string1.DATA}}\n储值金额{{amount4.DATA}}\n当前余额{{amount5.DATA}}\n储值时间{{time2.DATA}} ,1、style 中 设置 white-space: pre-line;3、\n替换成 然后使用 v-html ,这个方法不建议。2、加标签。

2025-01-15 14:36:58 570

原创 怎么使V-HTML中的图片自适应大小,不超过DIV宽度

对于大多数简单的用例,仅仅使用 max-width: 100% 和 height: auto 就足够了。这将确保图片不会超出其父容器的宽度,并且会根据容器大小自动调整自身大小,同时保持原始的宽高比例。怎么使V-HTML中的图片自适应大小,不超过DIV宽度。

2025-01-07 17:29:06 542

原创 vue 什么时候使用v-if 什么时候使用v-show

总之,在选择 v-if 或 v-show 时,应该考虑元素的显示频率以及对性能的影响。在 Vue.js 中,v-if 和 v-show 都是用来控制元素的显示与隐藏的指令,但它们的工作方式和适用场景有所不同。使用场景:适用于那些在大多数情况下不需要显示的元素,或者仅需要偶尔显示的元素。初始渲染开销:第一次渲染时,如果 v-if 的条件为假,则不会渲染该元素,因此在某些情况下可以节省初始渲染时间。初始渲染开销较大:即使元素不可见,v-show 也会将它渲染到DOM中,所以初次加载页面时可能会有额外的开销。

2025-01-07 15:32:30 204

原创 SimpleDateFormat parse方法出现java.lang.NumberFormatException: For input string: “20244.E202444E“ 格式化错误

SimpleDateFormat format方法出现java.lang.NumberFormatException: For input string: "20244.E202444E"这样的异常,数字格式化错误。这个其实就是并发的问题,当多个请求调用getRqPastDate方法的时候,并发导致异常发生。我传的日期也检查了下 2024-12-27 并没有什么问题,那么究竟什么导致的呢?加个同步锁,让程序执行完一个,再执行下一个。

2024-12-27 11:30:39 276

原创 SQLSERVER、MYSQL LIKE查询特殊字符和转义字符相同与不同

总结: 虽然 SQL Server 和 MySQL 在 LIKE 操作符的基本用法上有许多共同点,比如 % 和 _ 的使用,但在处理字符集 [ ] 和转义字符时存在一些不同。如果你希望编写可以在两个数据库系统中通用的代码,建议避免使用那些在两个系统之间有显著差异的功能,或者针对每个目标数据库系统适当地调整查询。要实现类似的否定效果,你可以使用正则表达式或其他方法。SQL Server 也有正则表达式的功能,但是通过 CLR 集成或者外部工具来实现,并不是内置的 LIKE 功能的一部分。

2024-12-25 13:53:44 569

原创 COS存储No content length specified错误提醒优化处理

在使用腾讯云的 COS (Cloud Object Storage) SDK 上传文件时,如果你遇到了警告信息 "No content length specified for stream data. Stream contents will be buffered in memory and could result in out of memory errors.",这通常意味着你正在尝试上传一个 InputStream 类型的数据,但是没有提供内容长度(Content-Length)。

2024-12-19 13:59:00 988

原创 Maven打包报java.lang.OutOfMemoryError错误

配置MAVEN_OPTS。

2024-12-10 15:44:28 1061

原创 redis 过期与清理

在Redis中,当一个键过期时,它会被自动标记为“已过期”,但并不意味着它会立即从内存中移除。Redis处理过期键的方式有两种主要机制:惰性删除与定期删除,这两种机制结合使用,既保证了大部分过期键能够及时得到清理,又避免了因频繁扫描所有键而导致的性能问题。答案:除非键过期时间设置不合理,或者迫于并发压力需要手动清理。redis 键过期了是不是就不用清理了?那么是否需要手动清理?

2024-12-06 14:23:36 452

原创 JAVA ImageIO.write图片异常问题

最近发现使用ImageIO.write图片的时候会出现图片颜色异常,变红变蓝变黑。

2024-11-21 13:50:57 360

原创 配置 Nginx 代理转发 OSS 图片

使用 Nginx 代理转发腾讯云 OSS 存储的图片时,Nginx 服务器会占用一定的带宽。这是因为 Nginx 服务器需要从 OSS 下载图片,然后再将图片传输给客户端。•如果跨域问题不严重,可以直接在客户端使用 OSS 的 URL 访问图片,这样不会占用 Nginx 服务器的带宽。1. 从 OSS 到 Nginx 服务器:Nginx 从腾讯云 OSS 下载图片。2. 从 Nginx 服务器到客户端:Nginx 将下载的图片传输给客户端。1、在Nginx中开启缓存。3、能直链访问的直链访问。

2024-11-14 14:58:56 626

原创 JAVA 毫秒级、秒级时间戳

在 Java 中,获取当前时间的以秒为单位的时间戳非常简单。你可以先获取当前时间的毫秒时间戳,然后将其转换为秒。

2024-11-13 11:27:03 503

原创 MYSQL 、SQLSERVER 常用日期格式化

2、如果字段本身就是日期格式 CAST(BYZD15 AS DATE)

2024-10-28 10:23:18 376

原创 Mybatis 批量操作存在则更新或者忽略,不存在则插入

当插入的数据在这些唯一性约束列上与现有数据发生冲突时,MySQL 将不会插入新的记录,而是根据 ON DUPLICATE KEY UPDATE 子句进行相应的更新操作。2. 唯一索引(UNIQUE INDEX):除了主键之外,还可以定义唯一索引,保证某些列的组合是唯一的。ON DUPLICATE KEY UPDATE:当插入记录违反唯一键约束时,更新已存在的记录。INSERT IGNORE:当插入记录违反唯一键约束时,忽略该记录,并继续处理其他记录。

2024-10-24 14:22:14 1443

原创 Java 判断字符串只能是字母和数字

Java 可以用正则表达式判断字符串只能是字母和数字。

2024-10-24 09:27:22 438

原创 Java 字符串占位格式化

如果你只需要简单的字符串替换和基本格式化,String.format 是一个很好的选择。如果你需要处理更复杂的格式化逻辑,MessageFormat 提供了更多的灵活性和功能。Java 提供了几种方式来处理字符串占位符,最常用的是 String 类的 format 方法和 MessageFormat 类。占位符 %s:字符串 ,%d:十进制整数,%f:浮点数,%t:日期/时间,%b:布尔值,%x 或 %X:十六进制整数。基本语法同上,但是占位符换成了 {0}、{1}、{2} 等:按顺序替换参数。

2024-10-18 14:43:43 1165

原创 Mybatis Plus 查看组装的SQL条件的办法

但是这个开启后日志内容太多,查找与定位较为麻烦。1、日志配置为 trace模式开启数据库语句打印。比喻:在logback.xml里配置。2、直接在需要调试的地方log日志。

2024-10-12 14:20:53 574

原创 JAVA MySQL或SQLSERVER处理大量update语句优化

在 MySQL 或者SQLSERVER 中处理大量 UPDATE 语句时,性能优化是一个关键问题。1、使用 CASE 语句进行批量更新。2、使用 JOIN 进行批量更新。

2024-09-24 15:55:51 518

原创 【BUG记录】JAVA8 集合的stream 报stream has already been operated upon or closed

报的错翻译一下就是流已经关闭了。

2024-09-18 16:06:58 319

原创 JAVA long 转 int 的坑

因此,当 long 类型的值转换为 int 类型时,如果该值超出了 int 类型的表示范围,将会发生截断,只保留低32位,导致转换后的值可能与原始值不同。相比之下,int 类型的取值范围是从 -2^31 到 2^31 - 1。当你将一个 long 值转换为 int 值时,如果该 long 值超出了 int 类型所能表示的范围,将会发生截断(也称为溢出)。当 long 类型的值转换为 int 类型时,实际上是通过位操作完成的,具体来说是通过将 long 值的高32位丢弃,只保留低32位。

2024-09-05 11:20:02 419

原创 Spring Boot @AllArgsConstructor 还是 @RequiredArgsConstructor

AllArgsConstructor 和 @RequiredArgsConstructor 不适合用来注入由 @Value 注解绑定的值,因为这些值通常是在运行时动态解析的,并且不是作为构造函数的参数注入。这意味着,如果你的类中有多个字段,并且希望在构造函数中初始化所有这些字段,那么可以使用 @AllArgsConstructor。在大多数情况下,@RequiredArgsConstructor 是更好的选择,因为它仅生成必要的构造函数,减少了不必要的代码,并且保持了依赖关系的清晰性。

2024-09-04 09:35:01 765

原创 MySQL删除操作时遇到1093 - You can‘t specify target table ‘xxx‘ for update in FROM clause

意思就是在 MySQL 中,您不能在 DELETE 语句的 FROM 子句中引用目标表,这是因为在 DELETE 语句中,目标表不能出现在 FROM 或 JOIN 子句中。您所尝试的查询违反了这个规则,因此收到了错误信息 You can't specify target table 'YOUR_TABLE' for update in FROM clause。下面是一个修改后的示例,它将按照您的需求删除重复的记录。

2024-08-21 08:47:50 855

原创 JAVA 封装一个工具类,将实例的里面的空值设为对应的默认值

JAVA 封装一个工具类,将实例的里面的空值设为对应的默认值,比喻字符串类型就设为默认 "", Integer就设为0。

2024-08-09 16:12:45 238

原创 Java 处理一张单据,处理花费时间挺久,有单号,不用redis怎么可以快速判断其在处理中,不需要再处理

在Java中处理长时间的任务并且需要避免重复处理同一张单据的情况下,在不使用Redis或其他外部存储服务情况下。方法二:使用文件系统 创建和删除文件记录状态。方法一:使用数据库表 表记录记录状态。方法三:使用本地缓存。

2024-08-06 11:34:52 361

原创 SQLSERVER 触发器记录表某个字段更新记录

【代码】SQLSERVER 触发器记录表某个字段更新记录。

2024-08-01 17:10:09 607

原创 SQLSERVER IN 或者NOT IN 参数过多解决方案

select * from shangpin where spdm not in (...) 这个语句not in 参数如果很多可能超过2100个,怎么写SQL为好呢?如果是in 则用EXISTS。

2024-07-22 13:58:28 634

原创 Linux 关闭某个服务失败处理方法

1、检查进程状态 ps aux | grep eposGatewayService。2、手动处理进程 sudo kill -9 7080。从上面运行结果来看已经可以了。

2024-07-11 15:15:57 498

WinSW.NET4.zip

WinSw(Windows Service Wrapper)是一个开源项目,它可以让我们快速把一个可执行的程序注册为Windows的系统服务。

2020-04-17

notepadd++.zip

notepad(记事本)是代码编辑器或WINDOWS中的小程序,用于文本编辑,在文字编辑方面与Windows写字板功能相当。是一款开源、小巧、免费的纯文本编辑器。 Notepad内置支持多达 27 种语法高亮度显示(囊括各种常见的源代码、脚本,值得一提的是,完美支持 .nfo 文件查看),也支持自定义语言。

2020-04-17

app.sh jar安装成linux服务安装命令脚本

app.sh 是java将jar安装成linux服务安装命令脚本 脚本使用方式 : 1-改好配置文件 2-将app.sh 与 jar 放置一个文件夹 3-给与app.sh相应执行权限,chmod 777 app.sh 4-启动 ./app.sh start

2020-04-17

JAVA-COM Bridge 中间件

Jacob 是 JAVA-COM Bridge的缩写,是一个中间件,能够提供自动化访问MS系统下COM组件和Win32 libraries的功能。 • MS系统提供的COM组件 COM组件 对象ID MS Word Word.Application MS Excel Excel.Application MS Powerpoint Powerpoint.Application MS IE InternetExplore.Application

2020-04-17

空空如也

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

TA关注的人

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