随笔分类 - Spring
摘要:一、需求背景 对外提供服务的接口需要统一做验签和参数合法性校验。每个接口的加签算法相同,不同的是参数的不为空的要求不同。 要求,在controller层外做校验,校验不通过直接返回,不进入controller层。 引入jar包 1、Spring <dependency> <groupId>org.s
阅读全文
摘要:Quartz Quartz是一个完全由Java编写的开源作业调度框架。不仅可以用来创建简单的定时程序,还可以创建成百上千甚至上万个Job的复杂定时程序。 Quartz框架的核心对象: 1、Job:表示一个工作,要执行的具体内容。此接口中只有一个方法,如下:void execute(JobExecut
阅读全文
摘要:切面1与切面2之间使用@Order注解指定执行顺序,数字小的先执行 切面1: @Order(1) @Aspect @Component xxx @Around(value = "webPointcut()") public Object around(ProceedingJoinPoint join
阅读全文
摘要:官方文档地址:https://docs.spring.io/spring-data/data-redis/docs/current/reference/html/#why-spring-redis Spring Redis 需要Redis 2.6或更高版本,Spring Data Redis与两个流
阅读全文
摘要:Spring for Apache Kafka 官网:https://docs.spring.io/spring-kafka/docs/current/reference/html/ 一、Spring整合Kafka 1、需要的jar包 <dependency> <groupId>org.spring
阅读全文
摘要:一、分库分表思路 https://www.cnblogs.com/yangyongjie/p/13803706.html 二、Spring动态数据源实现分库下数据源切换 在分库分表的情况下,在执行SQL时选择连接不同的数据源(库)的思路:配置多个数据源加到动态数据源对象中,根据实际的情况动态切换到相
阅读全文
摘要:Spring Boot的特性 1)、创建独立的Spring应用 2)、直接嵌入Tomcat、Jetty或Undertow等Web容器(不需要部署WAR文件) 3)、提供固化的starter依赖,简化构建配置和依赖管理 4)、当条件满足时自动地装配Spring或第三方类库 5)、提供运维(Produc
阅读全文
摘要:什么是Servlet? Servlet是运行在Web服务器或应用服务器(如tomcat)上的程序,它是作为来自Web浏览器或其他HTTP客户端的请求和HTTP服务器上的数据库或应用程序之间的中间层。 使用 Servlet,您可以收集来自网页表单的用户输入,呈现来自数据库或者其他源的记录,还可以动态创
阅读全文
摘要:微服务架构:微服务是系统架构上的一种设计风格,它的主旨是将一个原本独立的系统拆分成多个小型服务,这些小型服务都在各自独立的进程中进行,服务之间通过基于HTTP的RESTful API进行通信协作。被拆分的每一个小型服务都围绕着系统中的某一项或一些耦合度较高的业务功能进行构建,并且每个服务都维护着自身
阅读全文
摘要:设计模式分为创建型、行为型和结构型 设计模式的6大原则: 1、开闭原则:对扩展开放,对修改关闭 2、里氏替换:任何父类出现的地方,子类都可以替换。子类不要重写和重载父类的方法 3、迪米特原则:减少类之间的耦合,调用依赖类封装好的方法,不对其进行修改 4、接口隔离:接口最小化,实现的接口不应包含不需要
阅读全文
摘要:一、拓展原理 1、BeanPostProcessor:bean的后置处理器,在bean创建对象之后的初始化前后做一些拦截工作 2、BeanFactoryPostProcessor:beanFactory的后置处理器,在BeanFactory初始化之后调用【postProcessBeanFactory
阅读全文
摘要:Spring中最核心的两个类:DefaultListableBeanFactory和XmlBeanDefinitionReader 1、DefaultListableBeanFactory是整个bean加载的核心部分,是Spring注册及加载bean的默认实现,其继承AbstractAutowire
阅读全文
摘要:一、Spring容器: 在基于Spring的应用中,你的应用对象生存于Spring容器(container)中,Spring容器负责创建对象,装配它们,配置它们并管理它们的整个生命周期,从生存到死亡。(在这里,可能就是从new()到finalize())。 容器是Spring框架的核心。Spring
阅读全文
摘要:1、DateTimeFormat:入参格式化 用法:用在类型为Date的字段上,用来接收String类型的字符串,将其转成Date类型 import org.springframework.format.annotation.DateTimeFormat; @DateTimeFormat(patte
阅读全文
摘要:简介: AOP:面向切面编程,即拓展功能不通过修改源代码实现,采用横向抽取机制,取代了传统的纵向继承体系重复性代码。在运行期通过代理方式向目标类织入增强代码。 Aspecj:Aspecj 是一个基于java语言的AOP框架,spring2.0开始,spring AOP引入对Aspect的支持,Asp
阅读全文
摘要:在基于Spring的应用中,你的应用对象生存于Spring容器(container)中。Spring容器负责创建对象,装配它们,配置它们并管理它们的生命周期, 从生存到死亡(在这里可能就是new到finalize()) bean的声明周期: 在传统的Java应用中,bean的生命周期很简单。使用Ja
阅读全文
摘要:SpringBoot 一、Service层Junit单元测试 需要的jar包 <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-test</artifactId> <sco
阅读全文
摘要:1、需要的结果数据格式为 创建的bean RankResult: RankGenreResult: AppRankDto: controller: service: mapper: mapper.xml 返回父菜单及其下的子菜单 需要的数据格式: 表结构: pojo dao mapper.xml s
阅读全文
摘要:为什么会跨域,要先了解浏览器的同源策略SOP(Same Orign Policy) https://segmentfault.com/a/1190000015597029 同源: 如果两个页面的协议,端口(如果有指定)和主机地址都相同,则两个页面具有相同的源。 协议/主机/端口 跨源网络访问 同源策
阅读全文
摘要:Spring解决循环依赖 什么是循环依赖:比如A引用B,B引用C,C引用A,它们最终形成一个依赖环。 循环依赖有两种 1、构造器循环依赖 构造器注入导致的循环依赖,Spring是无法解决的,只能抛出BeanCurrentlyInCreationException异常。因为构造器注入时的参数需要依赖b
阅读全文