
JAVA
文章平均质量分 66
阿里小阿希
这个作者很懒,什么都没留下…
展开
-
Vue + Spring Boot 打包部署与内网穿透终极指南
Vue + Spring Boot 打包部署与内网穿透指南 本文详细介绍了使用Vue(前端)和Spring Boot(后端)的项目环境配置、打包部署与内网穿透方法。 环境准备:安装Node.js、pnpm、JDK 17和Maven,配置开发环境。 项目打包:Vue项目通过Vite配置打包,Spring Boot通过Maven生成JAR包。 内网穿透:使用Natapp配置HTTP隧道,实现外网访问本地服务。 部署方案:提供分离部署(Nginx反向代理)和整合部署(单JAR包)两种方式。 常见问题:涵盖Toke原创 2025-06-05 15:03:39 · 659 阅读 · 0 评论 -
基本的部署操作
本文提供了Java项目部署与启动的详细检查清单。主要内容包括:1)部署前检查文件路径和Java/Nginx环境;2)启动后验证服务状态和日志;3)常见错误处理方法(端口占用、Nginx配置、防火墙);4)实用的服务管理命令。关键提醒:部署前确认环境,启动后检查状态和日志,通过tail -f实时查看日志排查问题。文章最后提供了可直接执行的简化命令清单,涵盖前后端分离和整合包两种部署方式。原创 2025-06-05 14:51:47 · 315 阅读 · 0 评论 -
解决 pnpm dev 运行报错的坎坷历程
在解决pnpm dev运行报错的过程中,我们遇到了依赖配置、文件权限和依赖缺失等多种问题。通过逐步排查和针对性的解决措施,最终使项目能够顺利启动。仔细检查文件中的脚本配置和依赖列表,确保dev脚本存在且依赖完整。确保文件和目录具有正确的权限,特别是可执行文件,如遇到权限问题,使用chmod命令进行调整。当依赖安装出现问题时,尝试多次重新安装或手动安装缺失的依赖包。注意 Node.js 版本与项目依赖的兼容性,必要时使用nvm等工具进行版本切换。原创 2025-05-06 10:25:17 · 1364 阅读 · 0 评论 -
解决 PostgreSQL 检查约束导致的数据插入异常问题
PostgreSQL 检查约束引发的数据插入问题原创 2025-04-24 10:46:20 · 427 阅读 · 0 评论 -
解决 Spring Boot + MyBatis 项目迁移到 PostgreSQL 后的数据类型不匹配问题
在当前的项目开发中,我们采用了 Spring Boot 作为后端开发框架,结合 MyBatis 进行数据库操作。起初,项目使用的是 MySQL 数据库,但随着业务的发展和对数据库功能的更高要求,我们决定将数据库迁移到 PostgreSQL。Spring Boot 以其便捷的开发特性和强大的自动化配置能力,极大地提高了开发效率;MyBatis 则凭借其灵活的 SQL 映射和执行机制,让我们能够更精细地控制数据库操作。原创 2025-04-23 11:40:34 · 863 阅读 · 0 评论 -
Java高效写入大量数据到Excel文件——使用Apache POI的SXSSFWorkbook
SXSSFWorkbook是Apache POI库中的一个类,它继承自XSSFWorkbook。写入速度快:SXSSFWorkbook在写入数据时,默认将数据分成多个块(默认100行),超出部分会写入临时文件,从而减少内存消耗。占用内存少:相较于XSSFWorkbook,SXSSFWorkbook在处理大量数据时,内存占用更少。支持大数据量:SXSSFWorkbook可以写入超过100万条甚至更多条数据。原创 2024-08-16 17:32:00 · 1574 阅读 · 0 评论 -
高性能缓存利器:Caffeine 在 Spring Boot 中的应用
Caffeine 是一个基于 Java 8 的高性能、近乎最佳的缓存库。它提供了多种优化技术,如写入时复制(Copy-on-Write)和分段锁(Segmented Locking),以提供高并发下的缓存操作性能。Caffeine 支持多种缓存淘汰策略,如 LRU、LFU 和 W-TinyLFU,这些算法可以根据实际使用情况自动调整,以达到近最佳的缓存命中率。面试官,您好!在我之前参与的一个监控系统中,我们面临着大量监控数据的高效存储和快速检索的挑战。原创 2024-09-13 10:46:34 · 1197 阅读 · 0 评论 -
国产化软件设计:遵循信创要求,助力信息技术自主创新
支持国产操作系统、CPU、数据库和中间件。确保网络通信的身份鉴别、数据传输机密性和完整性。实现应用和数据层的身份鉴别、数据传输机密性完整性、数据存储机密性完整性。依托法院密码服务平台提供的商用密码能力。原创 2024-08-19 16:24:48 · 2588 阅读 · 0 评论 -
mq相关问题(
某些业务流程如果支持批量方式消费,则可以很大程度上提高消费吞吐量,例如订单扣款类应用,一次处理一个订单耗时 1 s,一次处理 10 个订单可能也只耗时 2 s,这样即可大幅度提高消费的吞吐量,通过设置 consumer 的 consumeMessageBatchMaxSize 返个参数,默认是 1,即一次只消费一条消息,例如设置为 N,那么每次消费的消息数小于等于 N。那这就是第二个坑了。没有,谁让你第一个方案执行的太慢了,你临时写程序,接入数据来消费,消费一个丢弃一个,都不要了,快速消费掉所有的消息。原创 2024-08-16 17:18:43 · 569 阅读 · 0 评论 -
使用Docker将Java项目打包并部署到CentOS服务器的详细教程。
通过以上步骤,你已经学会了如何将Java项目打包成Docker镜像,并在CentOS服务器上运行。这只是一个开始,Docker还有很多高级功能等待你去探索,如数据持久化、网络配置、服务发现等。原创 2024-08-15 15:22:03 · 1304 阅读 · 0 评论 -
Java项目打包部署到服务器的详细教程
本文将详细介绍如何将Java项目打包成可执行文件,并将其部署到服务器上。通过本文的学习,你将掌握Java项目打包和部署的整个过程。原创 2024-08-13 17:26:25 · 3314 阅读 · 0 评论 -
在 Visual Studio Code 中批量删除注释和空行 【跑路了 准备把所有注释全删了】
在 Visual Studio Code 批量删除注释原创 2024-08-07 14:23:58 · 2795 阅读 · 1 评论 -
tianai-captcha SpringBoot 行为验证码 支持滑动、旋转、文字点选等
请使用SpringBoot脚手架工具tianai-captcha-springboot-starter;可以down下来学习一下 https://gitee.com/explore/captcha。该工具对tianai-captcha验证码进行了封装,使其使用更加方便快捷。tianai-captcha 支持的行为验证码类型。原创 2024-08-07 14:12:36 · 856 阅读 · 0 评论 -
IDEA右键新建时没有Java Class选项
IDEA右键新建时没有Java Class选项。原创 2024-08-07 13:57:19 · 467 阅读 · 0 评论 -
第一次安装Rabbitmq 访问网页时出现空白页 不显示topic table 页面底部显示:Management API returned status code 500 -
第一次安装Rabbitmq 访问网页时出现空白页不显示topic table页面底部显示:Management API returned status code 500 -原创 2023-11-15 16:13:01 · 935 阅读 · 0 评论 -
elasticsearch访问9200端口 提示需要登陆
elasticsearch访问9200端口 提示需要登陆。原创 2023-09-06 15:24:45 · 1148 阅读 · 0 评论 -
接口(API)设计规范
公共参数是每个接口都要携带的参数,描述每个接口的基本信息,用于统计或其他用途,放在header或url参数中。原创 2022-12-12 16:18:50 · 2862 阅读 · 0 评论 -
小阿希的面经分享一(redis篇)
String、set、list、zset、hash二、说说Redis的持久化策略Redis4.0之后,Redis有RDB持久化、AOF持久化、RDB-AOF混合持久化这三种持久化方式三、如何利用Redis实现一个分布式锁?方法1: 但是客户端忘记解锁 会发生死锁。 如果 失败 还是会死锁.方法2:可以加锁 set key random-value nx ex seconds #解锁 if redis.call(“get”,KEYS[1]) == ARGV[1] then ret原创 2022-06-12 23:46:43 · 358 阅读 · 0 评论 -
使用AbortController取消fetch请求 “Ajax是可以取消 Fetch是不可以取消?“
取消网络请求是一个很重要的点,特别是在页面中有大量请求,而用户切到其他页面时,适当的取消pending中的网络请求,可以减少网络资源的浪费和页面卡顿,提升用户体验。fetch,也是可以取消的。原创 2022-02-16 11:45:00 · 661 阅读 · 0 评论 -
Day 1 力扣219 滑动窗口
维护一个长度为k+1的集合作为窗口,判断是否出现重复,元素个数满了的话弹出k+1个前的数字原创 2022-01-19 22:44:11 · 164 阅读 · 0 评论 -
实现 Trie 前缀树字典树
前缀树参考力扣208题Trie 是一颗非典型的多叉树模型方法一:字典树Trie\text{Trie}Trie,又称前缀树或字典树,是一棵有根树,其每个节点包含以下字段:指向子节点的指针数组 children\textit{children}children。对于本题而言,数组长度为 262626,即小写英文字母的数量。此时 children[0]\textit{children}[0]children[0] 对应小写字母 aaa,children[1]\textit{children}[1]c原创 2021-12-28 20:52:43 · 221 阅读 · 0 评论 -
使用接口debug Sharing is only supported for boot loader classes because bootstrap classpatappeh has been
使用接口时debug提示 Sharing is only supported for boot loader classes because bootstrap classpath has been appended的解决方法在File | Settings | Build, Execution, Deployment | Debugger | AsyncStack Traces中原创 2021-11-25 11:56:51 · 701 阅读 · 0 评论 -
自学JAVA Day1
文章目录前言总结前言JAVA自学计划Day2提示:以下是本篇文章正文内容,下面案例可供参考判断 一个数组 是否 被排序,如果没有排序,则使用 快速排序,完成数组的排序 如果已经排序,则通过 二分法查找指定的元素在数组中出现的索引位置 public static void main(String[] args) { int[] array = {1, 2, 3, 0, 0, 9}; int ele = 0; if (!ArrayU原创 2021-11-17 17:21:57 · 685 阅读 · 0 评论 -
第一节:Arrays 和 ArrayUtils 工具类
文章目录1. toString(array)以数值的形式显示数组2. equals(array, array)判断两个数组内容是否相同3. Arrays.sort(array) 升序排列4.stream(array)以 stream 流的形式表示数组5. binarySearch(array)支持在整个数组中查找 同时可以区间查找6. copyOf(array)拷贝数组可指定长度二、ArrayUtils 工具类1. ArrayUtils.add()ArrayUtils.addAll(array, ...T原创 2021-11-16 20:35:54 · 1426 阅读 · 0 评论