
java
文章平均质量分 87
向上的车轮
专业:信息与计算科学
方向:软件开发 项目管理 动态语言 人工智能
喜好:人力资源 职业规划
体育:登山 游泳 探险
展开
-
Spring Boot微服务架构(九):设计哲学是什么?
SpringBoot的设计哲学可概括为"约定优于配置"和"开箱即用",其核心在于简化Spring应用的初始搭建和开发过程。主要特点包括:自动配置(基于类路径智能推断)、起步依赖(解决版本兼容问题)、内置生产就绪特性(Actuator提供监控功能)、内嵌服务器(简化部署)以及无XML配置。这些特性使企业能够显著提升开发效率,降低运维成本,轻松实现微服务和云原生部署,同时无缝集成Spring生态。通过消除繁琐配置和依赖管理,SpringBoot成为企业构建现代Java应用的首选框架。原创 2025-05-30 07:39:31 · 1259 阅读 · 0 评论 -
Spring Boot微服务架构(八):开发之初就引入APM工具监控
使用 APM(Application Performance Management)工具监控 Spring Boot 应用,可以帮助开发者实时追踪性能瓶颈、分析调用链路、监控资源使用情况,并快速定位故障。原创 2025-05-28 17:27:27 · 1143 阅读 · 0 评论 -
Spring Boot微服务架构(七):服务间通信方式有哪些?
本文总结了SpringBoot微服务架构中常见的服务间通信方式,分为同步通信、异步通信、服务网格和其他方式。同步通信包括RESTful API(适合实时响应场景)和gRPC(适合高性能需求);异步通信涵盖消息队列(如Kafka/RabbitMQ)和事件驱动架构(适用于解耦场景);服务网格(如Istio)适合治理大规模微服务;其他方式如Feign客户端和Dubbo RPC框架。建议根据实时性、解耦需求等因素综合选择,通常需要混合多种通信方式以满足不同业务场景需求。原创 2025-05-28 07:38:34 · 1172 阅读 · 0 评论 -
Spring Boot微服务架构(六):伪装的微服务有哪些问题?
伪装的微服务往往会导致“分布式单体”问题,识别这些特征有助于回归微服务的核心目标:。原创 2025-05-27 07:42:07 · 1911 阅读 · 0 评论 -
Spring Boot微服务架构(五):一个系统一个微服务是“真微服务架构”?
一个系统一个微服务:不是真正的微服务架构真正的微服务:必须有多个独立自治的服务CRM系统案例:应该拆分为等多个服务如果只是把整个系统包装成一个"微服务",本质上仍是单体架构,无法享受微服务的优势。正确的做法是根据业务边界进行合理拆分。原创 2025-05-26 08:00:00 · 768 阅读 · 0 评论 -
Spring Boot微服务架构(四):微服务的划分原则
通过以上原则和案例说明,可以合理地将CRM系统划分为多个微服务,既能发挥微服务的优势,又能避免过度拆分带来的问题。原创 2025-05-24 15:51:19 · 1457 阅读 · 0 评论 -
Spring Boot微服务架构(三):Spring Initializr创建CRM项目
通过以上步骤,你已经成功使用Spring Initializr创建了一个基础的CRM项目,并可以开始扩展功能。原创 2025-05-24 13:28:26 · 1168 阅读 · 0 评论 -
Spring Boot微服务架构(二):开发调试常见中文问题
【代码】Spring Boot微服务架构(二):开发调试常见中文问题。原创 2025-05-23 09:41:50 · 1015 阅读 · 0 评论 -
Spring Boot微服务架构(一):如何拆分?如何将CRM系统拆解为多个微服务构建?
Spring Boot 是一个用于简化 Spring 应用程序开发的框架,它通过提供默认配置和自动配置来减少开发者的工作量。Spring Boot 的核心目标是让开发者能够快速启动和运行 Spring 应用程序,而无需进行繁琐的配置。原创 2025-05-23 09:04:39 · 1377 阅读 · 0 评论 -
40岁开始学Java:什么是面向切面编程AOP?有哪些应用场景?
它通过将公共逻辑从业务代码中剥离,显著提高了代码的可维护性和复用性。如果项目中需要频繁处理分散的公共逻辑,AOP 会是你的得力工具!,并通过动态织入(Weaving)的方式插入到目标代码中,从而实现“关注点的分离”。在面向对象编程中,我们通过继承、封装和多态解决纵向问题(如功能扩展),但。(如日志、事务、安全等)往往分散在各个类中,导致代码冗余且难以维护。• 通过 Spring 容器统一管理切面和业务对象的生命周期。的方式解决代码中分散的、与核心业务无关的公共性问题(称为。:运行时织入的高性能库。原创 2025-03-09 08:15:00 · 769 阅读 · 0 评论 -
40岁开始学Java:控制反转IoC
如果希望深入理解,可以尝试在 Spring Boot 项目中实践上述示例,并观察容器如何自动管理对象的生命周期。• IoC 中,对象由外部容器(如 Spring IoC 容器)创建和管理(• 提高代码的可维护性和可测试性(例如通过替换依赖的模拟对象进行单元测试)。通过 IoC,可以降低代码的耦合性,提高模块的复用性和可测试性。是 IoC 的一种具体实现方式,通过注入依赖来实现控制反转。• 无需修改业务代码,只需更换容器中的配置即可切换依赖实现。• 业务类不再直接依赖具体实现类,只需依赖接口。原创 2025-03-08 17:34:41 · 879 阅读 · 0 评论 -
40岁开始学Java:如何实现依赖注入?
在 Java 中实现依赖注入(Dependency Injection, DI)的核心思想是将对象的依赖关系从代码内部转移到外部容器或框架管理。通过以上方式,可以灵活实现依赖注入,降低代码耦合度,提升可维护性和可测试性。原创 2025-03-07 21:05:48 · 446 阅读 · 0 评论 -
40岁开始学Java:为什么要优先使用依赖注入Dependency Injection
在复杂项目(如微服务、企业级应用)中,优先使用 Spring 等支持 DI 的框架,并结合接口抽象和单元测试最大化其优势。:依赖注入将对象的创建和管理交给外部容器(如 Spring/IoC 容器),类只需声明需要的接口或抽象类型,而非具体类。:例如在运行时切换日志框架(从 Log4j 到 SLF4J)或缓存实现(从 Redis 到 Memcached)。:DI 允许在测试中注入模拟对象(Mock)或存根(Stub)。:无需依赖外部资源(如数据库),测试速度更快且更可靠。),导致类与具体实现强耦合。原创 2025-03-07 20:53:22 · 711 阅读 · 0 评论 -
Spring Boot使用JDBC /JPA访问达梦数据库
Spring Boot 本身并没有直接内置对达梦数据库的支持,但通过添加达梦数据库的 JDBC 驱动和配置数据源,你可以轻松地在 Spring Boot 项目中使用达梦数据库。根据项目的需求,你可以选择使用 Spring Data JPA、MyBatis 或其他 ORM 框架来操作数据库。原创 2025-03-06 08:58:51 · 1407 阅读 · 0 评论 -
40岁开始学Java:Java中的常量管理最佳实践
在Java中,有效的常量管理是提升代码可读性、可维护性和健壮性的重要环节。以下是针对常量管理的。通过遵循这些实践,可显著提升代码质量,减少维护成本,并降低因常量误用引发的Bug风险。原创 2025-03-03 13:40:13 · 384 阅读 · 0 评论 -
40岁开始学Java:Java中ASCII和Unicode的区别
在Java中,ASCII和Unicode是两种不同的字符编码标准,它们的设计目的、覆盖范围和实现方式有显著差异。char通过理解这些差异,可以避免乱码问题并正确管理Java中的文本数据。原创 2025-03-03 12:44:13 · 826 阅读 · 0 评论 -
40岁开始学Java:Java中单例模式(Singleton Pattern),适用场景有哪些?
在Java中,单例模式(Singleton Pattern)用于确保一个类只有一个实例,并提供全局访问点。原创 2025-03-02 17:23:24 · 1212 阅读 · 0 评论 -
40岁开始学Java:避免创建不必要的对象
关键点:识别可复用的对象,尤其是初始化成本高或频繁使用的不可变对象。权衡:避免过度优化轻量级对象,对象池适用于高成本资源。注意事项:确保线程安全,合理使用缓存和静态工厂方法。通过这些策略,可以有效减少不必要的对象创建,优化程序性能。原创 2025-03-02 17:13:35 · 721 阅读 · 0 评论 -
40岁开始学Java:Java异常处理的最佳实践
在Java中,异常处理是编写健壮、可维护代码的重要组成部分。原创 2025-03-01 12:12:17 · 1084 阅读 · 0 评论 -
40岁开始学Java:Java对象的创建和销毁的一些最佳实践
在Java中,对象的创建和销毁需要遵循一些最佳实践,以确保代码高效、安全且避免资源泄漏。:在Android中,匿名内部类隐式持有外部类引用,可能导致内存泄漏。接口时需明确深浅拷贝逻辑,避免意外共享可变状态。原创 2025-03-01 08:00:00 · 492 阅读 · 0 评论 -
40岁开始学Java:Java的官方版本有哪些?常见的错误说法有哪些?
OpenJDK 版本与 Java SE 完全对应,LTS 版本(8/11/17/21)是生产环境首选。实际使用中需根据需求选择厂商构建版本(如 Temurin、Corretto),并注意支持周期。非 LTS 版本适合短期测试,但需及时升级。原创 2025-02-28 08:00:00 · 1471 阅读 · 0 评论 -
什么是shiro?
Apache Shiro™is a powerful and easy-to-use Java security framework that performs authentication, authorization, cryptography, and session management. With Shiro’s easy-to-understand API, you can quickly and easily secure any application – from the smalles.原创 2021-07-08 21:34:00 · 681 阅读 · 0 评论