- 博客(277)
- 收藏
- 关注
原创 Tomcat 中部署 Web 应用
部署方式操作步骤优点缺点适用场景WAR - 自动部署复制 WAR 到webapps/极其简单路径受文件名限制;文件混在 Tomcat 目录中开发、测试环境WAR - 上下文配置创建 XML 文件指向外部 WAR路径灵活;WAR 存放位置灵活配置稍复杂生产环境目录 - 自动部署复制目录到webapps/方便修改和调试,无需打包目录混在 Tomcat 目录中;易被误删开发环境(频繁调试)目录 - 上下文配置创建 XML 文件指向外部目录最灵活强大;路径、位置都灵活;与 Tomcat 解耦。
2025-08-31 23:41:52
1274
原创 Spring 3.x(特别是 3.2+)中处理@Async异常的正确解决方案
在 Spring 3.1 中引入了接口,我们可以通过实现它来自定义异常处理,但这需要更多的手动配置。// 设置自定义的异常处理执行器 return new ExceptionHandlingAsyncTaskExecutor(executor);
2025-08-27 12:29:45
388
原创 Redis 6&7&8
版本状态推荐场景Redis 6稳定旧系统维护,或无法立即升级的环境。新项目不推荐。Redis 7当前生产环境的黄金标准绝大多数新项目和升级的首选。它在性能、稳定性、功能和成熟度之间取得了最佳平衡。你需要最好的内存数据库性能。Redis 8新稳定版(包含实验功能)1.追求最新特性:希望使用最新稳定版。2.评估新架构:希望实验性地尝试diskstore功能来降低超大数据集的内存成本。3.复杂集群运维:管理大规模 Cluster,需要更先进的自动化运维工具。最终决策指南:从旧版本升级。
2025-08-23 00:09:05
1059
原创 mainMem.useNamedFile = “FALSE“ 的效果
特性(默认)交换文件在虚拟机目录创建.vswp文件不创建.vswp文件交换行为使用.vswp文件进行交换尝试使用主机交换分区或全局空间数据存储空间占用,空间=配置内存-内存预留节省,不占用此空间主要风险占用存储空间如果主机无交换分区,则虚拟机可能因内存不足而崩溃推荐度推荐(默认且安全)不推荐(除非你非常清楚后果并有特定需求)给你的建议:除非你有非常明确的理由(并且完全理解其后果),否则绝对不要轻易将设置为 “FALSE”。
2025-08-21 20:00:01
702
原创 Maven resources资源配置详解
子模块 POM 配置 > 父 POM 配置同模块内按<resource>顺序处理依赖传递的资源不会自动合并(需用 Assembly 插件)
2025-08-18 21:59:48
749
原创 Jenkins Pipeline中参数化构建
允许用户在触发任务时动态传入参数,从而实现更灵活的流程控制。在 Jenkins Pipeline 中,通过参数化设置,你可以轻松实现。
2025-08-16 22:20:41
582
原创 vmware 挂起后 docker 恢复脚本
vmware 安装 docker 后vmware 挂起后再次运行vmware 外部主机无法访问 docker 中部署的应用(容器中的web服务等),当 docker 是正常启动,虚拟机内能正常访问。
2025-08-15 00:28:14
269
原创 优化 CentOS 7 中InetAddress.getLocalHost().getHostName()高延迟问题
经过上述优化,通常能将 12 秒的延迟降低到 100 毫秒以内。最佳实践是使用缓存机制或系统原生方法完全避免 DNS 查询。在 CentOS 7 上耗时 12 秒的问题通常与 DNS 解析和系统配置有关。确保包含正确的本地主机名解析(将。检查日志中的 DNS 查询耗时点。
2025-08-13 12:57:36
322
原创 Docker 镜像常见标签(如 `标准`、`slim`、`alpine` 和 `noble`)详细对比
Ubuntu LTS 版本提供长期支持,适合需要稳定且较新软件的环境。通过合理选择镜像类型,可以平衡体积、安全性和功能需求。以下是 Docker 镜像常见标签(如。编译阶段用标准镜像,运行阶段用。),需手动安装或改用。
2025-08-11 00:07:03
510
原创 使用 Grunt 替换 XML 文件中的属性值
grunt.registerTask('updateXml', '更新XML属性', function() {// 修改属性 - 示例:修改所有version元素的number属性// 写回文件grunt.log.ok('XML文件更新成功');done();});});});});
2025-08-08 22:07:46
423
原创 Spring 全局异常处理机制:多个 @ControllerAdvice 与重复 @ExceptionHandler
控制器本地的方法(如果有)按顺序检查类:先检查@Order值较小的类(数值越小优先级越高)在同一类中按方法声明顺序检查最后是 Spring 的默认异常处理。
2025-08-02 11:35:38
354
原创 在非Spring Boot的Spring项目中使用Lock4j
如果需要自定义锁失败处理,可以实现@Override// 自定义锁失败处理逻辑throw new RuntimeException("获取锁失败,key: " + key);然后在配置中注册:</通过以上配置,你就可以在传统的Spring项目中使用Lock4j实现分布式锁功能了。
2025-07-19 22:06:06
420
原创 Spring Boot 集成 Spring Security 完整示例
下面是一个完整的 Spring Boot 应用集成 Spring Security 的示例,包含用户认证、授权、自定义登录页面和密码加密等功能。
2025-07-13 18:47:13
700
原创 lombok.config文件的位置规则
可以放置在多个位置,Lombok 会按照特定顺序查找并合并这些配置。文件,你可以实现不同层次的配置覆盖,满足项目不同部分的差异化需求。查看编译后的代码,确认 Lombok 生成的元素是否应用了配置。Lombok 的配置文件。中的配置只影响测试代码。
2025-07-13 13:43:01
463
原创 Spring Boot 中使用 Lombok 进行依赖注入的示例
下面我将展示 Spring Boot 中使用 Lombok 进行依赖注入的不同方式,包括构造器注入、属性注入和 setter 方法注入,以及相应的测试用例。
2025-07-13 00:07:29
533
1
原创 V8 主要版本与对应 ECMAScript 支持
V8 是 Google 开发的 JavaScript 引擎,用于 Chrome、Edge 和 Node.js。它不断更新以支持最新的 ECMAScript(ES)标准。如果需要兼容旧环境(如 IE 或低版本 Node.js),可使用。的关系,以及关键特性变化。
2025-07-07 20:34:48
792
原创 主流 JS 引擎的版本演进及关键区别
JavaScript 引擎(如 V8、SpiderMonkey、JavaScriptCore 等)是浏览器和 Node.js 执行 JS 代码的核心组件。以下是主流 JS 引擎的版本演进及关键区别,重点关注。V8 是 Google 开发的高性能 JS 引擎,版本迭代频繁,主要优化。Mozilla 开发的 JS 引擎,注重。Apple 开发的 JS 引擎,专注。如果需要测试特定版本,可使用。或本地安装旧版浏览器。
2025-07-07 20:29:37
485
原创 Spring Boot 2 多模块项目中配置文件的加载顺序
在 Spring Boot 2 多模块项目中,配置文件的加载遵循特定的顺序规则。了解这些规则对于正确管理多模块应用的配置至关重要。
2025-07-01 20:16:09
536
原创 Spring Cloud Bus 和 Spring Cloud Stream
Bus 是系统管理的“广播电台”,Stream 是业务消息的“收发器”。:分布式系统的消息广播(配置刷新、事件传播)。:简化消息中间件的集成,提供统一的。
2025-06-30 20:49:02
428
原创 IDEA插件MetricsReloaded(复杂度) 和 Statistic(统计)
都是 IntelliJ IDEA(或其他 IDE)的插件,用于代码分析,但它们的。如果两者结合使用,可以同时获得。
2025-06-28 23:36:13
684
原创 IDEA2024.3 tomcat需要按两次停止按钮停止问题
IDEA 中安装了 CoolRequest 导致 tomcat 需要按两次停止按钮才能正常停止。idea 使用 tomcat 插件部署 web 应用,传统 web 应用。如果方式一未解决,禁用或者卸载 CooleRequest 插件即可。无法停止应用,项目为一个简单的web ,只实现了一个监听。,没有其他功能代码。需要再次点击停止(第二次点击)更新CollRequest 插件为最新的即可解决。项目代码简单,没有非守护线程运行,正常应该停止。启动 tomcat 服务器后,点击停止。
2025-06-28 22:34:40
353
原创 Tomcat Maven 插件
来直接部署 WAR 文件到 Tomcat 服务器,而无需手动复制 WAR 文件到。并配置用户权限才能通过 Maven 插件部署。通过 Tomcat Maven 插件,可以实现。,特别适合持续集成(CI/CD)流程。在 Maven 项目中,可以使用。中明文存储密码,可以在。Tomcat 需要启用。
2025-06-27 23:02:12
1027
原创 IntelliJ IDEA 加速优化指南
IntelliJ IDEA 是一款功能强大的 IDE,但随着项目规模增大和长期使用,可能会出现性能下降的情况。
2025-06-25 00:55:33
787
原创 使用 Code With Me 在内网环境中的配置指南
Code With Me 是 JetBrains 提供的一个协作开发功能,允许开发者实时共享项目并进行协作编程。
2025-06-24 19:49:11
539
原创 Redis 各版本差异及性能测试指标对比
注意:性能测试结果会因硬件配置、工作负载和测试方法不同而有差异,建议在实际环境中进行基准测试。*注:6.x和7.x的多线程I/O在高并发下性能提升明显。
2025-06-22 11:50:22
1164
原创 MySQL 主要集群解决方案
根据业务的数据一致性要求、扩展需求和运维复杂度选择合适的集群方案。对于新项目,推荐从InnoDB Cluster或云托管服务(如AWS Aurora)起步。
2025-06-22 11:48:38
660
原创 InnoDB Cluster 与 NDB Cluster 对比及部署指南
两种集群解决方案各有优势,InnoDB Cluster更适合传统OLTP场景,而NDB Cluster适合需要极高吞吐量和低延迟的特殊场景。
2025-06-22 00:18:27
478
原创 Greenplum/PostgreSQL pg_hba.conf 认证方法详解
pg_hba.conf 文件中的METHOD字段指定了客户端认证方式,以下是各种认证方法的详细说明和配置示例。
2025-06-18 21:32:31
577
原创 DBeaver 中 Greenplum、PostgreSQL 和 PostgreSQL (old) 驱动的区别
只有在连接非常旧的 PostgreSQL 服务器(如 8.x 或更早版本)或遇到新版驱动问题时,才使用 “PostgreSQL (old)”你可以在 DBeaver 的连接设置中手动切换或更新这些驱动,也可以在驱动管理界面查看每个驱动的具体版本信息。PostgreSQL 推荐使用 “PostgreSQL”(新版驱动)除非遇到兼容性问题。新版驱动通常有更好的性能、安全性和功能支持。
2025-06-18 21:05:21
498
原创 Greenplum 与 PostgreSQL 的关系
Greenplum 和 PostgreSQL 有着密切的渊源关系,但它们在设计目标和使用场景上有显著区别。
2025-06-18 00:16:45
945
原创 Spring Bean 生命周期:注册、初始化、注入及后置操作执行顺序
配置源读取:Spring 读取 XML、Java Config 或组件扫描的配置BeanDefinition 注册:将 Bean 定义注册到对于@Component扫描的类:通过对于 Java Config:通过@Bean方法对于 XML:通过。
2025-06-14 16:25:41
392
原创 Spring XML 常用命名空间配置
下面是一个综合性的Spring XML配置样例,展示了各种常用命名空间的使用方式:各命名空间说明:核心beans命名空间 ()context命名空间 ()aop命名空间 ()tx命名空间 ()mvc命名空间 ()cache命名空间 ()task命名空间 ()util命名空间 (未在示例中展示)jdbc命名空间 (未在示例中展示)这个配置样例展示了Spring框架中常用的命名空间及其典型用法。实际使用时,可以根据项目需求选择性地包含这些命名空间。
2025-06-13 22:03:05
774
原创 SecureCRT 配色方案 VBScript 脚本
以下是一个完整的 VBScript 脚本,用于配置 SecureCRT 的配色方案。这个脚本可以设置多种终端颜色,包括背景色、前景色以及 ANSI 颜色调色板。
2025-06-10 22:18:38
585
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人