Spring系列
好记性不如烂笔头_
每天都像打了鸡血似的。。。
展开
-
Spring-事物的隔离级别与传播行为
注:1、事务的隔离级别和数据库并发性是成反比的,隔离级别越高,并发性越低。2、对于不同的数据库,支持的隔离级别也不一样:Oracle只能支持读写提交和串行化,而MySQL能够支持4种,对于Oracle默认的隔离级别为读写提交,MySQL则是可重复读。3、注解@transactional的底层实现是Spring AOP技术,而Spring AOP技术使用的是动态代理。这就意味着对于静态...原创 2018-12-10 11:34:24 · 617 阅读 · 0 评论 -
Spring-声明式事务注意事项
参考:那些年spring声明式事务@Transaction的坑 Spring事务处理时自我调用的解决方案及一些实现方式的风险转载 2019-03-05 00:56:37 · 274 阅读 · 0 评论 -
SpringMVC-工作原理
一个完整请求的流转过程:用户:发送请求 前端控制器(DispatcherServlet):接收用户请求,并通过处理器映射器查找对应的处理器 处理器映射器(HandlerMapping):查找对应的处理器,返回给前端控制器 处理器适配器(HandlerAdapter ):根据前端控制器提供的处理器对象来调用处理器 处理器(Handler):即Controller,执行具体业务,并返回模...原创 2019-02-25 18:42:17 · 187 阅读 · 0 评论 -
Spring-bean的生命周期
bean的作用域:singleton:默认值,每次从IOC容器获取bean,都返回一个唯一的bean prototype:每次从IOC容器获取bean,都返回一个新的bean request:每次http请求都会获取一个新的bean,该bean在该request内有效 session:每次http请求都会获取一个新的bean,该bean在该session内有效 globalSessio...原创 2019-02-25 18:39:28 · 256 阅读 · 0 评论 -
Spring-注解-@Autowired原理
@Autowired注解处理器(AutowiredAnnotationBeanPostProcessor)// 在启动spring IoC时,容器会自动装载AutowiredAnnotationBeanPostProcessor后置处理器public class AutowiredAnnotationBeanPostProcessor extends InstantiationAwareBe...原创 2019-02-25 18:32:35 · 180 阅读 · 0 评论 -
Spring-IOC( Inversion of Control,控制反转)
Spring容器启动阶段和Bean实例化阶段:BeanFactory工作流程:加载所有的bean配置文件 将每个bean封装成BeanDefinition对象,并注册到BeanDefinition容器中 注册后置处理器(BeanPostProcessor)到BeanPostProcessor 容器中 BeanFactory准备就绪,等待外部获取bean对象(调用BeanFac...原创 2019-02-14 00:37:55 · 384 阅读 · 0 评论 -
为什么要使用Spring框架
简化java开发(Spring的根本使命)话说很久以前,使用的EJB(Enterprise Java Bean),但是它存在很多问题:1、业务类需要与EJB 框架紧耦合,必须编写多个接口才能创建业务组件,2、EJB 编程模型将开发人员引向了面向过程程序设计风格等。。。 后来,与EJB 编程模型完全不同的POJO 编程模型发展起来了。(POJO - Plain Old Java Object 一...原创 2019-02-13 21:48:33 · 1786 阅读 · 0 评论 -
SpringMVC-@RequestBody注解
处理HttpEntity传递过来的数据,一般用来将JSON格式的字符串直接转为对象在GET请求中,因为没有HttpEntity,不能使用@RequestBody。 在POST请求,可以使用@RequestBody和@RequestParam,如果使用@RequestBody,对于参数转化的配置必须统一。@RequestBody 将 HTTP 请求正文插入方法中,使用适合的 HttpMessa...原创 2019-02-14 22:43:43 · 975 阅读 · 0 评论 -
SpringMVC-@RequestParam注解
不看广告我们直接看疗效// 假设页面请求有两个参数:userId 和 password$.ajax({ url: 'sysUser/doUnlock', type: 'post', data: {userId:'用户编号',password:'用户密码'}, dataType: 'json', success: function (res) { ...原创 2019-02-14 21:40:20 · 425 阅读 · 0 评论 -
SpringMVC-RequestContextHolder的使用
RequestContextHolder:持有上下文的Request容器 通过RequestContextHolder的静态方法可以随时随地取到当前请求的request对象// 获取相关对象RequestAttributes requestAttributes = RequestContextHolder.getRequestAttributes();// 底层实现:reques...原创 2019-01-31 22:56:19 · 5483 阅读 · 0 评论 -
Spring-事物机制
事务就是对一系列的数据库操作(比如插入多条数据)进行统一的提交或回滚操作,如果插入成功,那么一起成功,如果中间有一条出现异常,那么回滚之前的所有操作。这样可以防止出现脏数据,防止数据库数据出现问题声明式事务建立在AOP的基础之上的。其本质是对方法前后进行拦截,然后在目标方法开始之前创建或者加入一个事务,在执行完目标方法之后根据执行情况提交或者回滚事务。 优点:不需要通过编程的方式管理事务,...原创 2018-12-10 13:03:40 · 141 阅读 · 0 评论 -
Spring-AOP(Aspect Oriented Programming)
AOP(Aspect Oriented Programming):面向切面编程Spring AOP实现方式:JDK动态代理 CGLIB动态代理注:因为Spring AOP 同时支持 CGLIB、ASPECTJ、JDK动态代理,当你的真实对象有实现接口时,Spring AOP会默认采用JDK动态代理,否则采用cglib代理。基本概念:通知(Adivce) 切点(Pointcut...转载 2019-02-26 09:27:42 · 235 阅读 · 0 评论