- 博客(230)
- 资源 (4)
- 收藏
- 关注
原创 Windows系统中将PostgreSQL 9.2版本数据库使用pg_dump.exe备份数据以及使用pg_restore.exe恢复数据,将备份数据共享到另一台服务器备份
步骤一:设计一个方案,现在需要定时备份数据,我的数据库是pg版本是9.2,在windows系统中。然后我需要备份两个库,一个库是gis数据的,另一个库是业务数据的,gis数据的一年备份一次,业务数据一个月一次。备份前需要判断系统空间磁盘是否满足备份条件,如果满足才能备份,不满足直接忽略。传递完成后windows备份删除。步骤二:在windows中备份后,需要传给另外一台服务器,另外一台服务器是linux系统,两台服务器都处于同网段。总体就是window备份数据,备份完成后传递给Linux系统,备份命令如下
2025-12-19 17:33:36
1003
原创 解决Cursor试用限制的终极指南:如何快速重置机器码解锁AI编程工具
摘要 go-cursor-help是一款开源工具,专门解决Cursor AI编程助手的试用限制问题。它通过修改配置文件中的机器标识符(如machineId、macMachineId等),帮助用户绕过"Too many free trial accounts"等试用限制提示。该工具支持Windows、macOS和Linux三大平台,提供一键安装脚本,操作简单快捷。配置文件路径根据不同系统而不同,工具会自动定位并修改关键字段,让用户继续享受AI编程功能。项目已开源,提供详细安装指南和技术原理
2025-12-09 13:57:22
330
原创 PostgreSQL中设计电商系统中常见的订单完成后地址信息被修改或商品信息被修改的情况
✅ 订单表冗余存储地址快照 - 核心解决方案✅ 下单时立即保存地址信息 - 不要只存ID✅ 查询订单时直接读快照 - 不关联地址表⭐ 保存原始地址ID,便于客服对比⭐ 提供地址对比功能(客服用)⭐ 订单列表也显示快照地址。
2025-12-06 13:56:44
310
原创 Spring Boot + 微信小程序项目调用微信支付V3版本支付示例以及遇到的问题解决
本文介绍了微信支付功能的核心实现代码,主要包括三个部分: 配置实体类(WeChatPayConfig):使用@ConfigurationProperties注解加载微信支付相关配置,包含商户号、API密钥、证书序列号等关键信息。 订单响应类(UnifiedOrderResponse):封装统一下单接口返回的数据,包括预支付ID、时间戳、随机字符串等支付必要参数。 支付服务类(WeChatPayService):通过@PostConstruct初始化微信支付客户端,提供JSAPI支付服务,使用RSAPubli
2025-12-05 16:31:25
184
原创 解决MySQL导入MySQL数据时出现的报错Row size too large (> 8126).changing some columns to TEXT or BLOB or using ROW
摘要 本文解决MySQL插入数据时出现的"Row size too large"错误。该错误是由于行数据大小超过8126字节的限制,系统建议将某些列改为TEXT/BLOB类型或修改行格式。解决方法是执行两条SQL语句:关闭InnoDB严格模式(SET GLOBAL innodb_strict_mode=OFF)和增大最大允许数据包大小(SET GLOBAL max_allowed_packet=256MB)。这种方法适用于处理大数据行插入问题。
2025-11-20 16:19:36
192
原创 Spring Boot多数据源Service中使用@Transactional失效问题解决
摘要:Spring默认无法管理多数据源事务。解决方案包括:1)禁用事务让操作自动提交;2)手动管理各数据源的事务;3)使用JTA实现分布式事务;4)拆分方法并分别指定事务管理器。其中手动管理和JTA方案可确保事务完整性但实现较复杂,禁用事务和拆分方法相对简单但可能影响数据一致性。根据业务需求选择合适方案。
2025-11-10 14:24:26
289
原创 使用游标解决SQL分页中LIMIT,OFFSET性能瓶颈问题
不同数据量下的分页策略选择:对于小型数据(<1万条)使用LIMIT/OFFSET;中等数据(1万-1000万条)采用游标分页,通过记录ID实现高效翻页;超大数据(>1000万条)建议使用数据库游标保证一致性;海量数据需结合分区技术。游标分页通过WHERE条件指定起始位置,避免OFFSET带来的性能问题,前端请求通过after/before参数传递游标位置。每种策略都有其适用场景,根据数据规模和业务需求选择最优方案。
2025-11-07 17:17:47
192
原创 【Java】了解GC过程
面试官问了一个这样的问题,YoungGC触发时会发生什么,我回答E区和S0区存活的对象会复制到S1区,然后清理E区和S0区,下一次GC时E区和S1区存活对象会复制到S0区,以此交替(不考虑对象进入老年代)。面试官继续问:E区和S0区的所有存活对象都可以复制到S1区吗?S1区能放下这么多对象吗?E区和S0区清理是整个删除吗?
2025-10-29 15:51:45
264
原创 Spring Boot项目中Maven引入依赖常见报错问题解决
这zjbdos-cloud-framework-core里面发现也引入了mybatis-plus-extension导致与现有项目中的mybatis-plus-extension依赖发生冲突导致报错,直接排除就好了。_remote.repositories:记录依赖来源仓库。.lastUpdated:记录最后更新时间戳。
2025-10-15 17:18:11
342
2
原创 Spring Boot临时解决循环依赖注入问题
直接找到IndexItemCalculateInfoServiceImpl类,然后使用@Lazy。这个只是临时方案,因为项目最近在迁移,也不可能重构别人的代码,只能用这种方式了。
2025-10-15 15:18:24
327
1
原创 超图导入GDB格式文件到达梦时出现字段缺失,看输出提示errcode:-6121,第1 行附近出现错误:数据精度超出范围,创建字段失败
超图导入GDB格式文件到达梦时出现字段缺失,看输出提示errcode:-6121,第1 行附近出现错误:数据精度超出范围,创建字段失败,然后我发现postgis的数据字段和达梦的数据字段对不上,有些字段都不见了
2025-10-15 10:32:44
519
原创 PGSQL空间数据表迁移到达梦数据库以及超图SuperMap导数据到达梦数据库的过程步骤以及实际操作中出现的常见问题解决方案
摘要 本文记录了PostgreSQL空间数据表迁移至达梦数据库的过程。首先通过SQLArk工具迁移常规数据,但遇到geometry类型不兼容问题,需手动转换为达梦的ST_Geometry类型。使用Java脚本处理SQL文件,将WKB数据包裹为DMGEO.ST_GEOMFROMWKB函数格式。随后介绍超图软件导入空间数据到达梦的步骤,包括驱动安装、新建数据库型数据源的注意事项,以及导入SHP文件后出现的字段类型问题(SmGeometry被存储为image类型)。整个过程涉及数据类型转换、特殊工具使用和不同系统
2025-09-25 16:55:21
1393
原创 Spring Boot项目国产化改造MySQL、PGSQL迁移达梦数据库,以及项目运行中遇到的问题解决
Spring Cloud项目国产化改造MySQL迁移达梦数据库,SQL变更
2025-09-12 14:06:45
449
原创 微信小程序中使用蓝牙Ble连接硬件开发板ESP32-C3蓝牙模块,通过ESP32-C3连接按钮开关实现增加值以及减少值同步到微信小程序中
基于ESP32-C3的蓝牙计分器系统实现 本系统采用ESP32-C3开发板构建了一个通过蓝牙连接的计分器系统。硬件部分包括ESP32-C3开发板、面包板、按钮开关等组件,总成本约30元。软件环境使用Arduino IDE开发工具,需安装ESP32离线包和串口驱动。系统实现分为硬件和微信小程序两部分:硬件端通过按钮开关输入信号,微信小程序端通过蓝牙连接接收数据并显示分数。系统实现了蓝牙设备搜索、连接、数据收发等功能,通过特征值通知机制实现实时分数更新。该系统具有成本低、易于实现的特点,适用于各类需要计分的应用
2025-08-10 21:27:04
905
原创 解决微信小程序中如何把npm构建的模块与主包分离,构建到分包上面
小程序分包配置与npm模块引入指南 配置小程序分包需要几个关键步骤:1)创建分包目录结构;2)将package.json复制到分包中;3)在project.config.json中添加npm配置;4)终端执行npm install安装依赖;5)最后构建npm到miniprogram_npm目录。这个过程使各个分包能独立管理第三方模块,避免主包体积过大。每个步骤都有对应的配置截图可供参考。
2025-08-07 08:46:30
354
原创 微信小程序中使用TensorFlowJS从环境搭建到模型训练及推理模型得到预测结果
本文介绍了在小程序端部署TensorFlow.js模型进行手写数字识别的完整流程。首先完成小程序环境配置,包括引入TFJS插件和安装相关依赖包。然后使用Python训练MNIST手写数字识别模型,将.h5模型转换为TensorFlow.js所需的.json格式并部署到服务器。最后在小程序端通过相机实时捕捉图像,调用模型进行预测,并将结果显示在界面上。整个过程涵盖了从模型训练到小程序部署的关键步骤,为移动端AI应用开发提供了实践参考。
2025-08-06 22:21:40
604
原创 解决微信小程序中camera组件被view事件穿透触发对焦以及camera的bindtap事件
解决微信小程序中camera组件被view事件穿透触发对焦以及camera的bindtap事件
2025-08-05 16:48:13
333
原创 微信小程序如何判断手机底部有横条
微信小程序判断底部横条(Home Indicator)的3种方法:1)通过wx.getSystemInfoSync()比较safeArea.bottom与screenHeight;2)异步获取wx.getSystemInfo();3)CSS使用env(safe-area-inset-bottom)。iOS设备用safeArea最准确,安卓需计算高度差,开发工具可模拟效果。推荐使用safeArea对比法或CSS安全区域变量,兼顾准确性和便捷性。
2025-07-26 10:57:05
497
原创 解决在微信小程序中view组件下的text和images设置了样式display: flex; align-items: center;对不齐
原始代码中,<text>元素的默认行高和<image>的内联显示方式导致对齐偏移。优化后代码通过设置line-height:1消除文字多余空白,并将图片改为block显示,使Flex容器的居中布局更加精确。这些调整解决了文字基线对齐和图片偏移问题,确保元素完美垂直居中。
2025-06-14 13:43:18
773
原创 MinIO中授权SSL证书后上传图片报错unable to find valid certification path to requested target解决办法
解决Java SSL证书校验失败的方案 当出现PKIX路径构建失败的SSL握手异常时,可通过以下步骤将MinIO证书导入Java信任库: 从MinIO服务器导出证书并保存为PEM格式 使用keytool命令将证书导入Java默认信任库(cacerts) 在导入过程中输入"yes"确认信任该证书 导入完成后重启Java项目 注意要确保使用正确的Java路径和证书密码(默认changeit)。此方案适用于因自签名证书或未受信任CA证书导致的SSL连接问题。
2025-06-11 22:59:34
370
原创 微信小程序中,解决lottie动画在真机不显示的问题
本文介绍了如何在微信小程序中使用Lottie动画,并通过后端接口获取JSON数据来渲染动画。首先,通过getRainInfo接口从后端获取JSON数据,并将其存储在rainJson中。接着,在onLoad方法中调用该接口并更新数据。initLottie方法用于初始化动画,确保在真机中正确显示动画的关键是使用animationData而非path。此外,动画页面的层级需设置为z-index:999999以确保其显示在最上层。最后,通过后端接口返回JSON文件,确保动画数据正确加载。
2025-05-21 20:48:05
962
原创 微信小程序中实现某个样式值setData改变时从350rpx到200rpx的平滑过渡效果
【代码】微信小程序中实现某个样式值setData改变时从350rpx到200rpx的平滑过渡效果。
2025-04-14 09:00:16
563
原创 Spring Boot + MinIO解决微信小程序wx.compressImage接口压缩图片质量只能压缩JPG格式的问题,PNG等IOS真机的图片格式无法压缩问题
Spring Boot + MinIO解决微信小程序wx.compressImage接口压缩图片质量只能压缩JPG格式的问题,PNG等IOS真机的图片格式无法压缩前端实现比较复杂,可以通过绘制画布Canvas操作,我这里直接在后端实现,后端采用Spring Boot,上传图片使用MinIO,这里直接在MinIO上传图片的时候进行压缩。小程序插件:支持,需要小程序基础库版本不低于 2.12.0。基础库 2.4.0 开始支持,低版本需做兼容处理。以 Promise 风格 调用:支持。压缩图片接口,可选压缩质量。
2025-03-30 16:21:00
486
原创 【悲观锁和乐观锁有什么区别】以及在Spring Boot、MybatisPlus、PostgreSql中使用
通过 FOR UPDATE 锁定查询的行,适用于高并发的情况下,确保同一时刻只有一个事务修改数据。你可以通过 MyBatis 的@Select 注解配合 FOR UPDATE 来实现。通过版本号机制,确保数据在更新时没有被其他事务修改。MyBatis-Plus 支持通过 @Version 注解来实现乐观锁。
2025-03-26 15:18:22
1600
原创 在Java实际项目中什么情况才会使用到消息队列?
消息队列(Message Queue, MQ)是一种异步通信机制,用于在分布式系统中不同组件之间传递消息。使用消息队列的主要目的是解耦系统、提高系统的可伸缩性、可用性和可靠性。消息队列广泛应用于高并发、高可用、分布式、微服务架构等场景。通过这些应用,消息队列在现代分布式系统中起到了至关重要的作用。
2025-03-06 16:52:36
990
原创 为什么小程序页面中赋值要通过this.setData,而不是直接=?为什么全局变量可以用=而不是setData?
可以直接使用 = 来修改,因为它们只是存储数据,不直接影响视图。需要使用 this.setData() 来更新,因为视图和 data 之间存在绑定,直接修改 data 不会自动更新视图。如果你希望在改变全局变量后让页面显示最新的全局变量数据,你就需要在改变全局变量后,通过 this.setData() 来更新页面的视图。
2025-02-17 10:21:38
354
原创 在pgsql中通过使用JOIN或EXISTS来解决主表与副表只在副表中使用条件查询,返回主表数据
比如,在pgsql中,我有两张表,一张是sanitation_maintenance_contract,另一张是sanitation_maintenance_contract_cycle,我需要在sanitation_maintenance_contract中写sql语句,但是在where中有个条件是根据sanitation_maintenance_contract_cycle中的start_date和end_date做条件。
2024-12-09 09:03:42
671
原创 解决微信小程序中地图map组件bindmarkertap冒泡到bindtap两个事件同时触发
由于bindmarkertap会比bindtap先执行,我们在执行bindmarkertap的时候由于有定时器100毫秒,在这100毫秒中,bindtap也被执行了,在这期间内将bindTapTimer设置成了false,当100毫秒到达后,判断bindTapTimer不等于true,将不会执行。那么在bindtap方法中,我们需要先把bindTapTimer设置成false,执行完逻辑代码后,等待200毫秒再将bindTapTimer设置成true即可。他们提供的解决方案是节流。
2024-11-13 15:16:45
788
原创 使用Java绘制图片边框,解决微信小程序map组件中marker与label层级关系问题,label增加外边框后显示不能置与marker上面
今天上线的时候发现系统不同显示好像不一样,苹果手机打开的时候是正常的,但是一旦用安卓手机打开就会出现label不置顶的情况。尝试了很多种办法,也在官方查看了,发现并没有给label设置zIndex的属性,只看到了一个叫什么碰撞类型的属性,但是这个东西设置了如果两个目标有接触就会被隐藏掉,并不是我们想要的结果。想了一下,如果我们不使用label生成边框呢,直接在服务器那边把图片绘制成有边框的不就好了,这样子只用marker就行了,就能得到iOS的效果了。
2024-11-13 10:27:30
906
原创 使用GDAL库的ogr2ogr将GeoJSON数据导入到PostgreSql中
使用GDAL库的ogr2ogr将GeoJSON数据导入到PostgreSql中
2024-10-25 16:50:51
1336
原创 Unity中常用组件介绍
Unity的组件系统非常灵活,允许开发者根据需要创建和组合各种组件以实现不同的功能。:用于角色的导航和路径寻址。:控制对象的位置、旋转和缩放。:用于播放简单的动画。:定义对象的表面外观,包括颜色、纹理和其他视觉效果。:用于UI元素的布局和管理,通常与UI组件结合使用。:用户自定义的脚本组件,用于添加自定义行为和逻辑。:显示文本内容,可以用于显示分数、提示等信息。:创建可调节的滑块,常用于设置音量或其他数值。:用于创建地形,支持高度图、纹理和植被等功能。:用于创建粒子效果,例如烟雾、火焰、雨等。
2024-10-18 15:27:02
556
原创 Java中字符串.split分割转List<String>判空问题
第二种判空后分割,如果cph字符串为空,判空后再分割cphList会=0。第一种分割直接分割,如果cph字符串为空,分割后cphList会>0。在xml中就不会进入这个判断了。
2024-10-15 09:47:18
580
原创 Spring Boot中使用RabbitMQ 生产消息和消费消息
RabbitMQ 中的交换机(Exchange)是消息路由的核心组件。它负责接收来自生产者发送的消息,并根据特定的路由规则将这些消息传递给一个或多个队列(Queue)。交换机的主要功能和类型。在扇出交换机中,可以将路由键设置为空字符串 “”,因为扇出交换机会将消息发送到所有绑定的队列,而不需要考虑路由键的具体值。convertAndSend(交换机,路由键也就是队列,你想传递的参数)交换机根据配置的路由规则和队列的绑定关系,将消息路由到相应的队列。消费者从队列中获取消息进行处理。生产者发送消息到交换机。
2024-10-10 15:00:02
1096
原创 Spring Boot 微信小程序接入微信支付
1、导入相关依赖 pom.yml2、文件配置微信公众号的基础信息 application.yml3、设置配置文件 WxPayConfig.java4、微信支付预下单实体类 WeChatPay.java5、微信支付API地址 WeChatPayUrlConstants.java6、预下单成功之后返回结果 OrderReturnInfo.java7、查询订单返回的实体类 QueryReturnInfo.java8、签名实体类 SignInfo.java9、Http工具类 HttpRequest.
2024-09-19 11:10:42
2866
1
原创 前后端会员模块开发中,在处理会员过期的问题时,需要考虑如何有效地进行状态检查,以确保用户在使用应用时能够及时获知会员状态
在处理会员过期的问题时,需要考虑如何有效地进行状态检查,以确保用户在使用应用时能够及时获知会员状态。
2024-09-09 10:07:31
552
Hadoop生态圈包(hadoop、hbase、kafka、spark、sqoop、zookeeper)
2022-05-13
请问一下C++中我定义了常量为啥还是报未声明的标识符呢?
2022-12-15
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅