
Spring
文章平均质量分 91
三师兄东流
滴水石穿
展开
-
Spring MVC参数传递各种方式汇总@RequestParam @RequestBody时间参数等
一、基本数据类型@RequestParam注解定义@Target({ElementType.PARAMETER}) // 只能作用于参数上@Retention(RetentionPolicy.RUNTIME)@Documentedpublic @interface RequestParam { // 定义参数名称,默认和名字一致 @AliasFor("name") String value() default ""; // 定义参数名称,默认和名字一致原创 2021-07-28 23:46:50 · 4970 阅读 · 0 评论 -
SpringMVC原理分析(一)
Servlet生命周期了解Servlet的生命(周期)是由容器(eg:Tomcat)管理的,换句话说,Servlet程序员不能用代码控制其生命。**加载和实例化:**时机取决于web.xml的定义,如果有x则在容器启动时(eg:SSM),反之则在第一次针对这个Servlet的请求发生时(eg:Spring Boot)。**初始化(init):**实例化后会立马进行初始化,也就是执行init方法,init方式只会执行一次。**请求处理:**初始化后,Servlet就可以接受请求了,基本方式是执行Ser原创 2021-06-29 18:21:39 · 5160 阅读 · 10 评论 -
Spring Boot 中 @Repository @Mapper @MapperScan @Component使用简述
@Repository和@Component@Repository和@Controller、@Service类似,用于标识mapper的Bean,源码引用的@Component@Target({ElementType.TYPE})@Retention(RetentionPolicy.RUNTIME)@Documented@Componentpublic @interface Repository { @AliasFor(annotation = Component.class) S原创 2021-06-25 17:58:24 · 930 阅读 · 0 评论 -
Mybatis-Spring原理分析 -- @MapperScacn(Spring Boot中mapper层是如何初始化并注册到Spring容器的)
原理说明作用根据@MapperScan注解配置的包路径,扫描所有mapper接口,创建BeanDefinition对象,修改beanClass属性值为MapperFactoryBean,注册到Spring容器中,为后续Bean初始化做准备。流程@MapperScan注解通过@Import方法导入MapperScannerRegistrar类,MapperScannerRegistrar实现了ImportBeanDefinitionRegistrar接口,覆写了registerBeanDefinit原创 2021-06-25 16:31:20 · 5493 阅读 · 2 评论 -
Spring5 事件驱动模型分析
Spring 事件驱动模型原理 to do…原创 2019-12-01 12:22:32 · 756 阅读 · 0 评论 -
二、Spring Boot 核心之理解SpringApplication
目录一、SpringApplication基本使用运行自定义通过 SpringApplicationBuilder API 调整二、SpringApplication准备阶段配置 Spring Boot Bean 源启动配置Bean源推断 Web 应用类型推断引导类(Main Class)加载应用上下文初始器 ( ApplicationContextInitializer )加载应用事件监听器( ...原创 2019-11-28 23:10:22 · 963 阅读 · 0 评论 -
一、Spring Boot 核心之自动装配实现
目录一、简介二、底层装配技术简述三、实现1、激活自动装配 -` @EnableAutoConfiguration`2、实现自动装配 - `XXXAutoConfiguration`3、配置自动装配实现 - ` META-INF/spring.factories`4、测试四、总结一、简介在 Spring Boot 场景下,基于约定大于配置的原则,实现 Spring 组件自动装配的目的。二、底...原创 2019-11-24 19:26:48 · 502 阅读 · 0 评论 -
Spring自定义注解+Aop记录用户操作日志
文章主体思路:自定义一个操作日志的注解,使用该注解作为切入点,拦截使用该注解的Controller中的方法。要点:自定义运行时(RetentionPolicy.RUNTIME)注解以自定义的注解作为切入点(Pointcut),与功能代码解耦springmvc配置文件中添加配置,使SpringAop可拦截Controller层的方法。 下面贴代码:自定义注解类: 切面类: 测试方法: 测试原创 2017-10-09 09:18:26 · 2220 阅读 · 0 评论 -
Spring Data JPA实体的生命周期总结
目录四种状态 API示例 persist remove merge refresh 参考链接四种状态首先以一张图,简单介绍写实体生命周期中四种状态之间的转换关系:瞬时(New):瞬时对象,刚New出来的对象,无id,还未和持久化上下文(Persistence Context)建立关联。托管(Managed):托管对象,有id,已和持久化上下文(Per...原创 2019-04-07 22:33:13 · 6284 阅读 · 2 评论