一.SpringBoot环境配置1.Java开发环境首先先确保在你的计算机里安装了Java Development Kit(JDK)。建议使用JDK 17,可以从Oracle官方网站上下载并安装。你可以如下图所示: 打开命令提示符或终端窗口,并运行以下命令来验证JDK是否正确安装:Java -version如果能够正确显示Java版本信息,则说明安装成功。2.构建环境(Maven)下载M
转载
2024-09-20 11:06:12
18阅读
一、代理模式(AOP的核心思想)1. 静态代理静态代理角色分析抽象角色 : 一般使用接口或者抽象类来实现真实角色 : 被代理的角色代理角色 : 代理真实角色 ; 代理真实角色后 , 一般会做一些附属的操作 .客户 : 使用代理角色来进行一些操作 实例:(1)抽象角色//抽象角色:租房
public interface Rent {
public void rent();
}(2)真
一、springboot常用注解参考:SpringBoot之常用注解配置类@SpringBootApplication是一个复合注解,包含了@SpringBootConfiguration,@EnableAutoConfiguration,@ComponentScan这三个注解。这三个注解的作用分别为:@SpringBootConfiguration:标注当前类是配置类,这个注解继承自@Confi
转载
2024-07-06 15:37:30
114阅读
文章目录前言点睛之笔:接口的抽象方法和抽象类的抽象方法的应用差别?举个例子UML 关系图关门,放代码抽象父类 Top子类 Bottom测试方法 和 结果最佳实践JDK 源码中的 java.io.InputStream设计模式的模版方法模式 前言体能状态先于精神状态,习惯先于决心,聚焦先于喜好。点睛之笔:接口的抽象方法和抽象类的抽象方法的应用差别?本文主要就是围绕这一点来说的 差异所在:相较于接口
转载
2024-10-15 06:40:19
14阅读
文章目录前言点睛之笔:接口的抽象方法和抽象类的抽象方法的应用差别?举个例子UML 关系图关门,放代码抽象父类 Top子类 Bottom测试方法 和 结果最佳实践JDK 源码中的 java.io.InputStream设计模式的模版方法模式 前言体能状态先于精神状态,习惯先于决心,聚焦先于喜好。点睛之笔:接口的抽象方法和抽象类的抽象方法的应用差别?本文主要就是围绕这一点来说的 差异所在:相较于接口
类的继承继承在面向对象开发思想中是一个非常重要的概念,它使整个程序架构具有一定的弹性。在程序中复用一些已经定义完善的类,不仅可以减少软件开发周期,也可以提高软件的可维护性和可扩展性。本节将详细讲解类的继承。 Object类是比较特殊的类,它是所有的父类,是Java类层中最高层类。在Object类中,主要包括clone()、finalize()、equals()、toString()方法等
1.对于实现了接口的类,用的jdk动态代理,此时如果用AutoWired是按照class的全路径匹配的,而动态代理返回的代理类是接口的子类,此时会有类型转换错误,可以改为 @Qualifier或者用set注入public class UserServiceImpl implements UserService {}
public class UserServiceImpl2 {
private
转载
2024-03-05 06:30:30
143阅读
自Spring Boot诞生以来,就引起了业界轰动,目前越来越多的公司技术选型选择拥抱Spring Boot。所以Spring Boot也成为面试必问的问题之一。下面的问题是小胖哥面试了很多候选人后总结出来的,希望对你有所帮助 问: Spring和Spring Boot有什么区别?答:Spring Framework提供了多种功能,使Web应用程序的开发更加容易。这些功能包括依赖注入,
转载
2024-06-20 20:19:26
61阅读
Spring Boot Bean和依赖注入在Spring Boot中,可以使用Spring Framework来定义bean及其依赖注入。 @ComponentScan注释用于查找bean以及使用@Autowired注释注入的相应内容。如果遵循Spring Boot典型布局,则无需为@ComponentScan注释指定任何参数。 所有组件类文件都自动注册到Spring Beans。以
转载
2024-04-12 10:10:46
36阅读
配置 bean,本章节中主要介绍蓝色文字部分. 配置形式:基于 XML 文件的方式;基于注解的方式 Bean 的配置方式:通过全类名(反射)、通过工厂方法(静态工厂方法 & 实例工厂方法)、FactoryBean IOC 容器 BeanFactory & ApplicationContext 概述 依赖注入的方式:属性注入;构造器注入注入属性值细节 自动转配 bean
转载
2024-03-27 00:05:08
390阅读
背景最近工作中需要对组内各个系统依赖的第三方接口进行监控报警,对于下游出现问题的接口能够及时感知.首先我们写了一个Spring AOP注解,用于收集调用第三方时返回的信息.而我们调用第三方的类抽象出一个父类.并在父类的方法中加入我们的自定义注解用于监控日志并打印日志. 很多子类继承了这个父类并使用父类中的方法.如: 当调用子类的doSomething方法时问题出现了,发现Spring AOP没有拦
转载
2024-04-10 15:35:02
210阅读
一、Spring简介1.Spring简化Java开发Spring Framework是一个应用框架,框架一般是半成品,我们在框架的基础上可以不用每个项目自己实现架构、基础设施和常用功能性组件,而是可以专注业务逻 辑。因此学习Spring Framework在架构和模式方面的结构和原理,对我们在架构和模块级别的理解帮助极大。Spring Framework(参考1)的宗旨是简化Java开发
Service层是整个web系统的负责业务逻辑一块,最有必要实现抽象,Service层要达到复用性,低耦合性。那么该如何抽象呢?一般遵循以下原则1、单一职责(SRP)2、开放-封闭(OCP)3、里氏代换(LSP) 把父类都替换成它的子类,程序的行为没有变化。简单地说,子类型必须能够替换掉它们的父类型。只有当子类可以替换掉父类,软件单位的功能不受到影响时,父类才能真正被复用,而子类也能够在父类的基
背景:扩展RedisTemplate的实现的时候写了这样一段代码:public class BusinessRedisTemplate extends RedisTemplate<String, String> {
private final String prefix = "business";
public BusinessRedi
转载
2024-06-21 18:43:49
96阅读
1.ServiceCollection(依赖注入的容器)ServiceCollection:ICollection作为依赖注入的容器,它存在一个List用来存放所有的注入到容器中的类型这里以注入单例模式执行过程为例为例: 注入流程 注入后的容器 2.ServiceDescriptor(注入服务描述器)private ServiceDescriptor(Type serviceTy
转载
2024-03-15 08:21:39
99阅读
文章目录一、抽象类是什么?二、初始抽象类2.1 基本语法2.2 继承抽象类三、抽象类总结四、Object类4.1 初始Object4.2 toString4.3 equals4.4 hashcode 一、抽象类是什么?在面向对象的概念中,所有的对象都是通过类来描绘的,但是反过来,并不是所有的类都是用来描绘对象的,如果一个类中没有包含足够的信息来描绘一个具体的对象,这样的类就是抽象类。 由于抽象类
转载
2023-06-09 21:43:32
397阅读
抽象类就是含有抽象方法的类只有声明没有实现的方法抽象类是作为父类被继承的,在多人同时进行同一项目时,由于类名等不统一而难以整合,所以就有了抽象这一概念,为的就是统一命名,方法在子类中去实现,这个获取抽象类中的方法就是继承。如果是一个毫不相干的类需要用到抽象类中的方法,这个时候就需要接口,把抽象方法方法写在接口中然后在类中去实现这个接口中的方法。public class Employee exten
转载
2023-10-10 23:47:14
167阅读
? @Autowired问题当我们在使用@Autowired属性注入时,会发现idea提示Field injection is not recommended ,译为:不推荐使用属性注入 要想了解Spring和idea之所以不推荐使用@Autowired属性注入,首先就要先了解Spring常用的注入方式:简单类型注入、集合类型注入, 域属性自动注入, 自动注入的类别, 空值注入, 构造注入。在
转载
2024-03-21 09:46:20
149阅读
抽象类除了不能实例化对象之外,类的其它功能依然存在,成员变量、成员方法和构造方法的访问方式和普通类一样。 由于抽象类不能实例化对象,所以抽象类必须被继承,才能被使用。
转载
2022-01-20 17:54:58
9357阅读
项目中很多场景可以使用事件来对系统进行解耦,让系统更便于维护和扩展。SpringBoot项目默认是支持事件的,我们只需要自定义事件,然后发布事件,之后监听事件处理业务逻辑即可。SpringBoot中我们会用到事件抽象类ApplicaltionEvent,事件监听接口ApplicationListener,事件发布接口ApplicationEventPublisher。本文基于用户注册成功之后发送短
转载
2024-06-25 12:58:24
188阅读