spring
文章平均质量分 83
周星猩
未知
展开
-
spEl 表达式
Spring 表达式语言 Spring Expression Language(简称 SpEL )是一个支持运行时查询和操作对象图的表达式语言 。 语法类似于 EL 表达式 ,但提供了显式方法调用和基本字符串模板函数等额外特性 。SpEL 虽然作为 Spring 家族中表达式求值的基础,但却可以被独立使用。依赖:<dependency> <groupId>o...原创 2019-12-08 22:19:01 · 265 阅读 · 0 评论 -
java valid
定义的校验类型@Null :验证对象是否为null @NotNull 验证对象是否不为null, 无法查检长度为0的字符串@NotBlank:检查约束字符串是不是Null还有被Trim的长度是否大于0,只对字符串,且会去掉前后空格.@NotEmpty:检查约束元素是否为NULL或者是EMPTY.@CreditCardNumber:信用卡验证@Email:验证是否是邮件地址,如...原创 2019-10-18 21:47:33 · 1365 阅读 · 0 评论 -
Spring五个事务隔离级别和七个事务传播行为
事务隔离级别隔离级别 1 DEFAULT 使用底层数据库的默认隔离级别,大部分数据库,默认隔离级别都是READ_COMMITED 2 READ_UNCOMMITED 允许事务读取未被其他事务提交的更改。脏读,不可重复读,幻读都可能会出现. 3 READ_COMMITED 只允许事务读取已经被其他事务提交的更改,可以避免脏读,但不可重复读和幻读问...原创 2019-08-25 17:42:39 · 910 阅读 · 0 评论 -
Spring BeanWrapper
BeanWrapper这个接口主要用来操作一些标准的JavaBeans。对Bean属性的操作,封装了一个bean的行为,诸如设置和获取属性值等。大家熟知的主要有下面的工具类(Apache的BeanUtils和PropertyUtils、cglib的BeanMap和BeanCopier、spring的BeanUtils),但是Spring里有有一个更加强大的BeanWrapper操作类(支持设置嵌套...原创 2019-08-08 17:11:51 · 544 阅读 · 0 评论 -
spring 循环依赖和生命周期
本文主要说的是Spring是如何解决bean循环依赖的问题,循环依赖和生命周期交织在一起的。生命周期图:Spring容器初始化时会读取 我们配置bean的信息。然后再一个一个的创建: DefaultListableBeanFactory.class: public void preInstantiateSingletons() throws BeansExc...原创 2019-07-31 15:24:39 · 264 阅读 · 0 评论 -
Spring-AOP @AspectJ
要在 Spring 中声明 AspectJ 切面, 只需要在 IOC 容器中将切面声明为 Bean 实例. 当在 Spring IOC 容器中初始化 AspectJ 切面之后, Spring IOC 容器就会为那些与 AspectJ 切面相匹配的 Bean 创建代理,AOP的原理其实就是利用了动态代理,将动态代理进行了封装。在 AspectJ 注解中, 切面只是一个带有 @Aspect 注解的...转载 2019-06-30 17:57:26 · 149 阅读 · 0 评论 -
Spring RabbitMQ 源码分析
目录一、知识点1、RabbitListenerEndpoint:2、RabbitListenerContainerFactory二、开始1、HandlerMethod2、ChannelAwareMessageListener3、SimpleMessageListenerContainer4、RabbitListenerAnnotationBeanPostP...原创 2019-06-29 23:40:13 · 1384 阅读 · 1 评论 -
Spring SmartLifecycle 在容器所有bean加载和初始化完毕执行
在使用Spring开发时,我们都知道,所有bean都交给Spring容器来统一管理,其中包括没一个bean的加载和初始化。有时候我们需要在Spring加载和初始化所有bean后,接着执行一些任务或者启动需要的异步服务,这样我们可以使用 SmartLifecycle 来做到。SmartLifecycle 是一个接口。当Spring容器加载所有bean并完成初始化之后,会接着回调实现该接口的类...转载 2019-06-29 16:55:31 · 1276 阅读 · 0 评论 -
Spring 后置处理器 BeanPostProcessor
前言BeanPostProcessor也称为Bean后置处理器,它是Spring中定义的接口,在Spring容器的创建过程中(具体为Bean初始化前后)会回调BeanPostProcessor中定义的两个方法。BeanPostProcessor的源码如下:public interface BeanPostProcessor { /** * Apply this BeanPo...原创 2019-06-25 00:41:55 · 312 阅读 · 0 评论 -
Spring Bean 生命周期方法 InitializingBean、init-method、PostConstruct等
概述spring 中bean的生命周期方法:通过 <bean> 元素的 init-method/destroy-method 属性指定初始化之后 /销毁之前调用的操作方法 通过实现 InitializingBean/DisposableBean 接口来定制初始化之后/销毁之前的操作方法; 在指定方法上加上@PostConstruct 或@PreDestroy注解来制定该方法...原创 2019-06-25 10:39:55 · 487 阅读 · 0 评论 -
Spring Cache Redis 源码解读
/** * Cache和map接口类似,可以get和put值。实现类有RedisCache。 * cache中有个name,这个name就是注解@CacheConfig、@Cacheable、@CacheEvict中的cacheNames,注意这里的cacheNames可以是数组。 * 一个cacheName会对应一个Cache实例。 */public interface Cache ...原创 2019-06-13 10:55:32 · 818 阅读 · 0 评论 -
Spring方法拦截器MethodInterceptor
实现MethodInterceptor 接口,在调用目标对象的方法时,就可以实现在调用方法之前、调用方法过程中、调用方法之后对其进行控制。MethodInterceptor 接口可以实现MethodBeforeAdvice接口、AfterReturningAdvice接口、ThrowsAdvice接口这三个接口能够所能够实现的功能,但是应该谨慎使用MethodInterceptor 接口,很可...原创 2019-06-12 18:26:33 · 432 阅读 · 0 评论 -
spring中的FactoryBean与ObjectFactory的区别
一、接口定义 :public interface FactoryBean<T> { //获取对象的工厂方法 @Nullable T getObject() throws Exception; //对象类型 @Nullable Class<?> getObjectType(); //是否是单例,这个属性决定了spr...原创 2018-11-28 14:37:33 · 4851 阅读 · 2 评论 -
Spring面试题和答案
Spring 概述1. 什么是spring?Spring 是个java企业级应用的开源开发框架。Spring主要用来开发Java应用,但是有些扩展是针对构建J2EE平台的web应用。Spring 框架目标是简化Java企业级应用开发,并通过POJO为基础的编程模型促进良好的编程习惯。2. 使用Spring框架的好处是什么?轻量:Spring 是轻量的,基本的版本大约2MB。控制...转载 2018-11-25 12:26:33 · 132 阅读 · 0 评论 -
spring bean元素的内置属性和子元素
一、bean的内置属性 id属性:id为bean的唯一标识名,就是常说的beanName。它必须是合法的XMLID,在整个XML文档中唯一。 name属性:用来为bean id创建一个或多个别名(这里是别名不是beanName),它可以是任意的字母符合,多个别名之间用逗号或空格分开。如果没有定义bean的id,那么第一个别名就会被作为id;如果也没有定义name,那么自动生成一个id和一个...原创 2018-10-20 16:48:48 · 1566 阅读 · 0 评论 -
spring profile 多环境配置管理
spring profile 多环境配置管理本地、测试、开发、产品等不同环境文件配置问题:如果在开发时进行一些数据库测试,希望链接到一个测试的数据库,以避免对开发数据库的影响。开发时的某些配置比如log4j日志的级别,和生产环境又有所区别。各种此类的需求,让我希望有一个简单的切换开发环境的好办法。解决:现在spring3.1也给我们带来了profile,可以方便快速的切换环境。使...原创 2018-10-15 16:20:15 · 294 阅读 · 0 评论 -
接口实现时Spring AOP切入点注意事项
最近好多人问我说我的我的切入点没有错误啊,怎么不起作用?而且大部分情况都是写AOP切入点时带有类继承或接口实现时出现的问题。在此总结一下,方便后人查阅。而且建议使用如IntelliJ IDEA、STS或者Eclipse装AspectJ插件自动显示切入点是否匹配目标对象/目标方法。 1、相关类1.1、抽象基类我们在写一些项目时,都会抽象一些基类,比如DAO、Servi转载 2017-11-03 11:25:40 · 3093 阅读 · 0 评论 -
简单的图片验证码
package com.fh.controller.system.secCode;import java.awt.Color;import java.awt.Font;import java.awt.Graphics2D;import java.awt.font.FontRenderContext;import java.awt.geom.Rectangle2D;import jav原创 2017-07-04 22:53:29 · 644 阅读 · 0 评论