logo
publist
写文章

简介

该用户还未填写简介

擅长的技术栈

可提供的服务

暂无可提供的服务

JAVA后端开发——深入理解 Java Static

写一个通用方法,到底该不该加static?工具类为什么要私有化构造器?为什么 Controller、Service、Mapper 不设计成static方法直接调用,非要注入一个对象?和到底有什么本质区别?很多时候我们只是死记硬背了规范,却忘了其背后的核心逻辑。这篇文章将从“对象”这个核心视角,把这些问题一次讲清楚。场景是否有状态 / 需要被代理?推荐设计典型例子纯计算 / 转换❌ 无Static

#java#开发语言
JAVA后端开发——Spring Boot 多环境配置与实践

在企业级项目中,开发、测试、生产环境差异巨大。合理管理配置文件可以提高部署效率、降低风险,同时保证敏感信息安全。本文总结了多环境配置规范、profile 激活逻辑及部署注意事项。resources:开发默认配置、dev profile外部 config:生产/测试环境差异 + 敏感信息profile 激活:jar 默认值 → 外部 config 覆盖 → 命令行覆盖安全:敏感信息不打包入 jar部

#java#spring boot#开发语言
JAVA后端开发——Spring Boot 组件化自动配置机制

Configuration → 这是配置入口@ComponentScan → 扫 Spring Bean@MapperScan → 扫 MyBatis Mapper告诉 Spring:“这是组件入口,把我的 Bean 和 Mapper 都装进来”内容作用配置类,扫 Bean,扫 Mapper告诉 Spring Boot “自动 Import 这个配置类”,实现无感加载路径与格式,每行写全限定类名,

#java#spring boot#开发语言
JAVA后端开发——Maven 依赖传递 ≠ Spring 自动装配

Maven 依赖解决的是“类路径”问题,而 Spring Bean 加载解决的是“容器管理”问题,两者不能混为一谈。对比维度Maven 依赖Spring Bean 加载作用确保.class文件在编译和运行时能被找到。确保类的实例被 Spring 创建并管理。生效方式pom.xml声明。扫描或 SPI 机制导入。核心误区以为引入了 Jar 包,Spring 就会自动接管。忘了告诉 Spring 去哪

#java#maven#spring
Docker Compose Build 与 Up 的区别:什么时候必须重建镜像

本文解析了 Docker Compose 中常见命令的使用场景和区别。核心在于理解 Docker 生命周期分为 Build(构建镜像)和 Run(运行容器)两个阶段。docker compose up -d 直接启动容器,--build 参数强制重新构建镜像,而 --no-cache 则完全忽略缓存构建。关键区分点在于修改内容属于镜像内部(需重新构建)还是运行配置(只需重启)。开发模式下通过 Vo

#docker#eureka#容器
JAVA后端开发—— Spring Boot 配置优先级解析(命令行 / JVM / 环境变量 / application.yml 谁覆盖谁?)

Spring Boot配置优先级解析:从命令行到默认值的完整层级。优先级从高到低依次为:命令行参数→JVM系统属性→环境变量→外部application.yml→内部application.yml→@PropertySource→默认值。关键原则是"离启动命令越近优先级越高",如命令行参数(--server.port)会覆盖所有其他配置。实战示例展示了多层级配置的最终生效规则,

#java#spring boot#jvm
Dockerfile 构建镜像 VS Docker Compose 拉官方镜像:MySQL 服务配置对比

MySQL 服务在 Docker 中的两种部署方式:1)通过 Dockerfile 构建自定义镜像,适合生产环境和团队标准化部署,具有高度可控性和可复用性;2)通过 Docker Compose 直接拉取官方镜像,适合本地开发和测试,具有快速启动和灵活配置的特点。两种方式各有优势,可根据实际场景选择使用,甚至结合使用:生产环境用自定义镜像,开发环境用 Compose 快速启动官方镜像。

#docker#mysql#容器
JAVA后端开发——如何在多层代理环境下实现稳定的签名算法:Host 与端口问题解析

本文探讨了API签名系统中Host字段处理的关键问题,分析了端口差异、多层代理影响及解决方案。核心观点包括:1)签名系统应忽略默认端口但保留非默认端口;2)Nginx/CDN等代理可能修改Host头,需统一规范化处理;3)提出canonicalHost规则,建议客户端与服务端采用相同处理逻辑;4)该设计兼顾HTTP协议兼容性和多层代理环境下的稳定性。通过标准化Host处理流程,可有效避免因网络层H

#java#开发语言
GitLab 项目创建与分支管理全流程

本文详细介绍了企业团队如何规范使用GitLab进行代码管理。首先从创建空项目开始,讲解如何上传初始框架代码到main分支并创建dev开发分支。重点说明了分支保护设置,包括禁止直接推送main和dev分支,必须通过Merge Request合并。然后详细阐述了团队协作开发流程:开发者从dev创建个人分支开发,提交代码后发起MR请求,经审核后合并到dev分支,最终稳定版本合并到main分支。这种流程确

#gitlab
JAVA后端开发—— Maven 生命周期与 IDEA 中Maven 插件面板介绍

Maven 生命周期不是简单的按钮集合,而是一套严谨的软件工程流水线。开发时:多用compile快速验证。联调时:必用install同步仓库。发布前:务必保证纯净。

#java#maven#intellij-idea
    共 41 条
  • 1
  • 2
  • 3
  • 4
  • 5
  • 请选择