Spring框架学习
文章平均质量分 77
轻云K
这个作者很懒,什么都没留下…
展开
-
MyBatis 整合SpringBoot 启动源码分析
MyBatis 启动源码分析开启MyBatis 是通过@MapperScan@Retention(RetentionPolicy.RUNTIME)@Target(ElementType.TYPE)@Documented@Import(MapperScannerRegistrar.class)@Repeatable(MapperScans.class)public @interface MapperScan { String[] value() default {}; String[]原创 2021-03-22 16:01:59 · 287 阅读 · 3 评论 -
Spring创建Bean 中的三级缓存 解决循环依赖
Spring中创建Bean 的三级缓存原创 2021-03-01 02:35:32 · 577 阅读 · 1 评论 -
Spring 中 Bean 的生命周期
Spring 中 Bean 的生命周期Spring 最主要的的功能就是Bean的创建使用,所以了解Spring 中Bean 的生命周期是有必要的。在Spring中描述一个配置的Bean是使用 BeanDefinition ,所以对于Bean的初始化流程是扫描读取(XML 或者是注解)Bean的配置,然后在根据BeanDefinition 进行初始化Bean 放到 Spring 容器中。其中在读取配置BeanDefinition 的时候和创建Bean的实例对象的时候,Spring 提供很多的扩展方式参与到原创 2021-02-25 16:21:17 · 149 阅读 · 2 评论 -
Spring 的事务传播行为
Spring 的事务传播行为TransactionDefinition 中定义了 7 种类型的事务传播行为,是 Spring 框架独有的事务增强特性,不属于的事务实际提供方数据库行为。REQUIRED : 如果当前没有事务,就新建一个事务,如果已经存在,则加入已经存在的事务REQUIRES_NEW :新建事务,如果当前已经有事务就挂起当前事务SUPPORTS :支持当前事务,如果没有事务就已非事务方式运行NOT_SUPPORTED :以非事务方式运行,如果当前存在事务,就挂起MANDATORY原创 2021-02-21 17:27:00 · 147 阅读 · 0 评论 -
编写一个SpringBoot 工程的start 模块
编写一个SpringBoot 工程的start 模块其实就是讲将打包的的jar工程(被依赖的工程)里的Bean的创建交给当前工程的Spring IOC,一般情况下Spring是不会扫描jar中的包的所以就无法将jar中的Bean 正常的加载到当前的Spring IOC中,但是SpringBoot 提供了一种方式在resources\META-INF\spring.factories 配置次jar的javaConfig 就可以实现将jar包中的Bean加载到当前Spring 环境中去工程目录结构配置原创 2020-10-20 18:29:23 · 947 阅读 · 4 评论 -
SpringBoot dubbo 的简单使用注解版本
SpringBoot dubbo 的简单使用注解版本关于工程的关系配置 可以看上一篇关于dubbo 的引用是 implementation group: 'org.apache.dubbo', name: 'dubbo-spring-boot-starter', version: '2.7.6'alibb-dubbo-mineserviceapi 模块 ---- 接口模块public interface AnnotationDemoService { String sayHello(原创 2020-10-17 18:19:25 · 439 阅读 · 0 评论 -
SpringBoot dubbo 的简单使用 xml 版本
SpringBoot dubbo 的简单使用 xml 版本使用gradle 创建父子工程dubbo 其实就是一个rpc 的远程调用的框架(主要功能),具体已经实现好了 ,并且dubbo 中实现了一些监控的功能alibb-cloud-study 父工程//setting.gradlerootProject.name = 'alibb-cloud-study'include 'alibb-dubbo-mineserviceapi'include 'alibb-dubbo-provider'in原创 2020-10-16 18:18:58 · 301 阅读 · 0 评论 -
Spring @ConfigurationProperties 和 @EnableConfigurationProperties 的使用
Spring @ConfigurationProperties 和 @EnableConfigurationProperties 的使用@ConfigurationProperties 的使用@Component@ConfigurationProperties("dev") // 将其和配置文件中的dev开头的属性进行关联public class DevConfig { private String user;//配置文件中的dev.user 的映射 public Strin原创 2020-10-13 11:11:23 · 377 阅读 · 1 评论 -
Spring Aop 的使用
Spring Aop 的使用pointcut 点的语法常用的execution(modifiners-pattern?ret-type-pattern declaring-type-pattern? name-param(param-patterm)throws-pattern?)? 表示:该参数可以出现一次或零次中文: execution(<修饰符>?<返回类型> <声明类型>?<方法名>(<参数>)<异常>?)举例:ex原创 2020-10-12 17:47:13 · 81 阅读 · 0 评论 -
spring 之 简单的Aop框架(自己实现)
spring 之 简单的Aop框架(自己实现)首先定义一个 config.properties#xxx=java.util.ArrayListxxx=com.study.springenvironment.javastudy.proxy.aopframework.ProxyFactoryBeanxxx.advice=com.study.springenvironment.javastudy.proxy.MyAdvicexxx.target=java.util.ArrayList//简单的反射创建原创 2020-06-12 11:06:08 · 178 阅读 · 0 评论 -
Spring 之 Cglib (动态代理)
Spring 之 Cglib (动态代理)Cglib 的FastClass 会比一般的java的动态代理快很多。下面代码中有简单的说明/** * @ClassName TargetPojo * @Author 莫邪 * @Description TODO * @Date Created in 0:17 2020/4/8 * @Version 1.0 *///被代理的类public class TargetPojo { public void pojoMethod(){原创 2020-06-12 10:45:16 · 927 阅读 · 0 评论 -
java 动态代理的案例使用与解析
java 动态代理的案例使用与解析解析在代码注释中,不多做解释import java.lang.reflect.Method;//简单的方法拦截接口public interface Advice { void beforeMethod(Method method); void afterMethod(Method method);}import java.lang.reflect.Method;//简单的接口实现public class MyAdvice implements Advi原创 2020-05-25 01:28:37 · 210 阅读 · 0 评论 -
Spring拦截器Interceptor的使用
Spring的拦截器(HandlerInterceptor【接口–实现】/HandlerInterceptorAdapter【继承和重写相关的方法】)import com.tmo.tmo_sms.utils.RedisUtil;import com.tmo.tmo_sms.utils.SignUtil;import org.springframework.beans.factory.an...原创 2018-07-18 01:01:58 · 18923 阅读 · 4 评论