Spring 原理

Spring基本概念

Spring 特点

sring是一个全面的、企业应用一站式解决,贯穿表现层、业务层、持久层,能够与其他框架无缝衔接整合。

  • 轻量 :从大小与开销两方面而言Spring都是轻量级的,完整的spring框架可以在一个大小只有1M多的JAR文件里面发布,并且spring所需的处理开销也是微不足道的
  • 控制反转:spring通过一种被称作控制反转的IOC的技术促进低耦合,当应用了IOC,一个对象依赖的其他对象会通过被动的方式传递进来,而不是这个对象自己创建或者查找。
  • 面向切片 spring支持面向切片的变成,并且把应用业务逻辑和系统服务分开
  • 容器:spring包含并管理应用对象的配置和生命周期,在这个意义上是一个容器,你可以配置每个bean如何被创建–基于一个可配置原型,bean可以创建一个单独的实例或者每次都声称一个新的实例。
  • 框架 spring可以讲简单的组件配置,组合成复杂的应用
  • 在spring中应用对象被声明式组合在XML文件中,spring也提供了很多基础功能(事务管理、持久框架集成等),将应用逻辑的开发留给开发者。

Spring常用注解

bean注入与装配的方式有很多种,可以通过xml,get/set方式,构造函数或者注解。简单易用的方式就是使用spring的注解,spring提供了大量的注解方式。

常用注解:@Controller,@RestController,@Component,@Repository@Service
@Responsebody @RequestMapping @Autowired @PathVariable @requestParam @RequestHeader @ModelAttribute @SessionAttributes @Valid

Spring 第三方结合

权限:shiro
缓存:redis/enchace
持久层框架:Hibernate/Mybatis

Spring IOC原理

概念:spring通过配置文件描述bean以及bean之间的依赖关系,利用java语言的反射功能实例化Bean,并建立bean之间的依赖关系。spring的IOC容器在完成这些底层工作的基础上,还提供了Bean实例缓存、生命周期管理、Bean实例代理、事件发布、资源装载等高级服务
spring 容器高层视图: Spring启动时候读区应用程序提供的Bean配置信息,并在spring容器中生成一份Bean配置注册表,然后根据这张注册表实例化Bean,装配好Bean之间的依赖关系,为上层应用提供准备就绪的运行环境。其中Bean缓存池为HashMap实现。

IOC容器实现

BeanFactory–框架基础设施

BeanFactory 是spring框架的基础设施,面向spring本身;AppllicationContext面向使用Spring框架的开发者,几乎所有的应用场合我们都直接使用ApplicationContext而非底层的BeanFactory

BeanDefinitionRegistry 注册表

Spring配置文件中的每一个节点元素在Spring容器里面都通过一个BeanDefinition对象表示,它描述了Bean的配置信息,而BeanDefinitionRegistry接口提供了向容器

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值