切面 注解spring aop

Spring源码解析——ApplicationContext容器refresh过程

正文 在之前的博文中我们一直以BeanFactory接口以及它的默认实现类XmlBeanFactory为例进行分析,但是Spring中还提供了另一个接口ApplicationContext,用于扩展BeanFactory中现有的功能。 ApplicationContext和BeanFactory两者 ......

Java @Override 注解

在代码中,你可能会看到大量的 @Override 注解。 这个注解简单来说就是让编译器去读的,能够避免你在写代码的时候犯一些低级的拼写错误。 Java @Override 注解用来指定方法重写(Override),只能修饰方法并且只能用于方法重写,不能修饰其它的元素。 @Override 注解可以强 ......
注解 Override Java

@FeignClien注解

@FeignClient是Spring Cloud中的一个注解,用于定义一个声明式的REST客户端。它可以让我们像调用本地方法一样调用远程服务。 @FeignClient 注解有以下属性: name:指定 FeignClient 的名称,用于创建 FeignClient 的 Spring Bean, ......
注解 FeignClien

Spring源码解析——IOC之bean 的初始化

正文 一个 bean 经历了 createBeanInstance() 被创建出来,然后又经过一番属性注入,依赖处理,历经千辛万苦,千锤百炼,终于有点儿 bean 实例的样子,能堪大任了,只需要经历最后一步就破茧成蝶了。这最后一步就是初始化,也就是 initializeBean(),所以这篇文章我们 ......
源码 Spring bean IOC

注解(Annotation)简介,内置注解,元注解,自定义注解

注解:不是程序本身,可以对程序做出解释(这一点和注释没什么区别) 可以被其他程序(比如编译器)读取 @Functional(这是L)(这是I)Interface 函数式接口 内置注解:java本来就有的注解 @Override 重写 @Deprecated 已废弃,不推荐使用的意思 @Suppres ......
注解 Annotation 简介

【Mybatis】model类通过注解忽略某属性

当使用的model类中需要新增一些字段仅用于程序中传参,而不需要添加到数据库表中时,可以通过添加@Transient注解使mybatis忽略它而不做对应关系。 例如: @Transient private String userConfig;如果是使用的mybatis plus,需要使用 @Tabl ......
注解 属性 Mybatis model

SSM,Spring Boot和Redis学习中出错的问题

1. Spring 1.1 Spring事务 事务隔离级别是数据库自带的,与Spring无关 √ Spring自己实现了一套与数据库无关的事务机制 × @Transactional注解主要是针对数据的增加、修改、删除和查询进行事务管理 × 1.2 Spring的Session会话 Session会话 ......
Spring 问题 Redis Boot SSM

Spring Cloud 5大组建有哪些

......
Spring Cloud

SpringBoot之使用Redis和注解实现接口幂等性

目录1 接口幂等性1.1 概念1.2 实现思路1.3 代码实现1.3.1 pom1.3.2 JedisUtil1.3.3 自定义注解@ApiIdempotent1.3.4 ApiIdempotentInterceptor拦截器1.3.5 TokenServiceImpl1.3.6 TestAppli ......
注解 SpringBoot 接口 Redis

@JsonFormat注解对日期类型进行序列化时造成的时区问题(@JsonFormat注解用法说明)

1.情景展示 在前后端交互过程当中,往往需要后端返回前端日期类型数据。 在后台程序,我们往往是不需要对日期类型数据进行格式化的,而在将数据返回给前端的时候,可能会需要对日期类型进行格式化。 如何很好的解决这个矛盾呢? 2.具体分析 最好的解决办法就是:只在返回前端数据时,进行格式转换。(也就是:序列 ......
注解 JsonFormat 序列 时区 日期

告别复杂逻辑,项目终于用上了 Spring 状态机,非常优雅!

告别复杂逻辑,项目终于用上了 Spring 状态机,非常优雅! 1、什么是状态机 1.1 什么是状态 先来解释什么是“状态”( State )。现实事物是有不同状态的,例如一个自动门,就有 open 和 closed 两种状态。我们通常所说的状态机是有限状态机,也就是被描述的事物的状态的数量是有限个 ......
逻辑 状态 项目 Spring

Spring Boot WebMvcConfigurer

Spring Boot WebMvcConfigurer, 它被用来确定Spring Boot全局的MVC 属性,通常需要定义一个实现 WebMvcConfigurer 接口配置类,然后在此类中配置相关MVC属性。 如下示例代码所示: package com.exception.qms.config ......
WebMvcConfigurer Spring Boot

Spring源码解析——IOC之循环依赖处理

什么是循环依赖 循环依赖其实就是循环引用,也就是两个或则两个以上的bean互相持有对方,最终形成闭环。比如A依赖于B,B依赖于C,C又依赖于A。如下图所示: 注意,这里不是函数的循环调用,是对象的相互依赖关系。循环调用其实就是一个死循环,除非有终结条件。 最全面的Java面试网站 Spring中循环 ......
源码 Spring IOC

Spring事务管理

Spring事务管理1 Spring事务简介【重点】1.1 Spring事务作用事务作用:在数据层保障一系列的数据库操作同成功同失败Spring事务作用:在数据层或业务层保障一系列的数据库操作同成功同失败1.2 案例分析Spring事务需求:实现任意两个账户间转账操作需求微缩:A账户减钱,B账户加钱 ......
事务管理 事务 Spring

Spring中有哪些依赖注入的方式

Spring中有哪些依赖注入的方式 有2种实现方式: 注解(如@Autowired,@Resource,@Required) 配置文件(如xml) 1.注解: @Component public class MyService { private Dependency dependency; @Au ......
方式 Spring

Spring源码解析——IOC属性填充

正文 doCreateBean() 主要用于完成 bean 的创建和初始化工作,我们可以将其分为四个过程: 最全面的Java面试网站 createBeanInstance() 实例化 bean populateBean() 属性填充 循环依赖的处理 initializeBean() 初始化 bean ......
源码 属性 Spring IOC

spring BeanUtils.copyProperties 版本更新赋值失败

今天遇到了个小问题 是由于springboot 版本升级导致的 BeanUtils.copyProperties 赋值失败,结果就导致了用户无法登录的问题 目前的版本是 <parent> <groupId>org.springframework.boot</groupId> <artifactId> ......
copyProperties BeanUtils 版本 spring

spring学习1

1.使用Ioc容器管理bean,bean是Ioc容器中对象的统称(servlet,dao) 控制反转 (这难道是我之前Java项目中写了无数次的bean的由来吗) 2.在Ioc容器内将有依赖关系给bean进行关系绑定 依赖注入 这两个操作可以使原本的程序充分解耦,达到使用对象时不仅可以直接从Ioc容 ......
spring

3.SpringBoot——IOC和AOP原理

Spring框架概述 Spring是轻量级的Java EE框架。Spring有两个核心:IOC和AOP IOC:Invention Of Control控制反转,把创建对象过程交给 Spring 进行管理的思想。 AOP:Aspect Oriented Programming面向切面编程,不修改源代 ......
SpringBoot 原理 IOC AOP

Spring-AOP根据spel获取方法参数值、Bean对象属性值

Spring-AOP根据spel获取方法参数值、Bean对象属性值,动态的获取属性值,可以用来做注解式分布式锁、注解式获取属性值等等。 第一步:自定义注解,代码如下所示 package com.example.springbootstudy.interfaces; import java.lang. ......
Spring-AOP 属性 对象 参数 方法

2.SpringBoot——常用注解

Controller层 //设置当前控制器类为RESTful风格,等同于@Controller与@ResponseBody两个注解的组合功能 @RestController //设置当前控制器方法(模块)的请求访问路径 @RequestMapping("/web/role") //依赖注入/自动装配 ......
注解 SpringBoot 常用

Spring、Redis相关知识查漏补缺

动态web页面不具有动态性 × 静态web页面不具有交互性 √ 事务隔离级别是数据库自带的与Spring无关 √ Spring自己实现了—套与数据库无关的事务机制 × 软件框架是面向某个领域的、可复用的半成品软件 √ 使用软件框架的优势是开发的灵活性和扩展性更好 × 拦截器可以拦截所有请求(包括静态 ......
知识 Spring Redis

spring学习三:IoC概述

IOC:控制反转,它并不是一种技术而是一种设计思想,是一个重要的面向对象编程法则,能够知道我们如何设计出松耦合,更优良的程序。 Spring通过IOC容器来管理所有java对象的实例化和初始化,控制对象与对象之间的依赖关系,我们将由IOC容器管理的java对象称为Spring Bean,它与使用关键 ......
spring IoC

基于Spring事件驱动模式实现业务解耦

事件驱动模式 举个例子🌰 大部分软件或者APP都有会有会员系统,当我们注册为会员时,商家一般会把我们拉入会员群、给我们发优惠券、推送欢迎语什么的。 值得注意的是: 注册成功后才会产生后面的这些动作; 注册成功后的这些动作没有先后执行顺序之分; 注册成功后的这些动作的执行结果不能互相影响; 传统写法 ......
解耦 模式 事件 业务 Spring

Spring Boot 自定义注解,AOP 切面统一打印出入参请求日志

今天主要说说如何通过自定义注解的方式,在 Spring Boot 中来实现 AOP 切面统一打印出入参日志。小伙伴们可以收藏一波。 废话不多说,进入正题! 一、先看看切面日志输出效果 在看看实现方法之前,我们先看下切面日志输出效果咋样: 从上图中可以看到,每个对于每个请求,开始与结束一目了然,并且打 ......
切面 注解 Spring 日志 Boot

Spring中@Autowired和@Resource的区别

说明 @Autowired这个注解呢,是由Spring提供的;@Resource由JDK提供的 区别 ①注解内参数不同 @Autowired只包含一个required参数,默认为true,表示开启自动注入 @Resource 包含七个参数,其中最重要的两个是name和type ②装配方式默认值不同 ......
Autowired Resource Spring

Spring Cloud Admin

一、Admin简介 提供友好的界面展示actuator统计的数据,可以很好的监控整个微服务系统中的实例运行情况信息。 服务异常告警。 二、服务端配置 启动类添加@EnableAdminServer注解 <!-- Admin 服务 --> <dependency> <groupId>de.codece ......
Spring Cloud Admin

Spring Boot中配置文件介绍及其使用教程

一、配置文件介绍SpringBoot项目中,大部分配置都有默认值,但如果想替换默认配置的话,就可以使用application.properties或者application.yml或者application.yaml进行配置。SpringBoot默认会从resources目录下加载applicati ......
文件 教程 Spring Boot

Spring事务失效的10大场景

Spring事务失效的10大场景 对于从事java开发工作的同学来说,Spring的事务肯定是再熟悉不过了,我们一般就用一个简单的注解:@Transactional,就能轻松搞定事务。但是如果使用不当,也会坑到你怀疑人生。 那今天我们就来聊一聊,事务失效的场景。 总的来说分为两种,一种是事务不生效, ......
场景 事务 Spring