spring
spring高度灵活的轻量级框架
1.管理对象的生命周期(IOC)
原来创建对象的方式,这种方式代码之间产生依赖耦合
接口 对象名 = new 实现类();
通过IOC(控制反转),以及结合DI(依赖注入)的方式让spring以BeanFactory(工厂)的模式
管理维护所有配置了bean的对象的生命周期,指一个类的实例的创建,分配给其他对象以及
销毁等操作都交给spring的IOC容器来做。面向接口编程的一种模式,优点是让对象之间
解耦
工作原理:
IOC实现了工厂模式,通过读取applicationContext.xml配置文件中的<bean>标签,注
到IOC容器,注入方式有set,构造注入产生一个BeanFactory,BeanFactory通过
getBean(取得配置的bean的id)方法返回对象
注入方式有:
set注入
构造器注入
动态方法注入
静态工厂注入
2.AOP,面向切面的编程,spring采用AOP思想,面向切面编程,可以实现任意一组通用性业务
,不影响主线业务
使用AOP关注三个点,Aspect切面,Advice通知类型,PointCut切入点
1.提取通用的业务代码,封装成业务组件,这个组件称为切面
2.需要关注组件在什么地方执行,切入点
3.需要关注在什么时候执行,通知类型,五种通知
通知(Advice):指在切面的某个特定的连接点上执行的动作。Spring切面可以应用5中通知:
前置通知(Before):在目标方法或者说连接点被调用前执行的通知;
后置通知(After):指在某个连接点完成后执行的通知;
返回通知(After-returning):指在某个连接点成功执行之后执行的通知;
异常通知(After-throwing):指在方法抛出异常后执行的通知;
环绕通知(Around):指包围一个连接点通知,在被通知的方法调用之前和之后执行自定义的
方法。
设计模式:工厂模式,简单工厂模式
特征:把主动new对象变为通知工厂然后由工厂创建对象并且交给调用者引用
工厂模式实现java三大开发原则:
依赖倒置原则:由主动创建对象变为通知第三方工厂创建并且返回对象实例,减少依赖
依赖抽象而不依赖具体的实现
迪米特法则:尽量减少避免将接触更多的对象,知道的尽可能少
开闭原则:关闭修改,开放扩展
优点:减少对象之间的耦合
配置bean
<bean id="userXm" class="com.seecen.User">
<!--默认调用属性的set方法注入属性值-->
<property name="userName" value="小明"/>
<property name="say" value="哈喽,沃德!"/>
</bean>
id:唯一性的,首字母小写
class:指向类路径
bean中property用来给bean中带有setter方法的属性注入值
3.spring整合其他框架,,可以对hibernate,Struts2,jdbc,mybatis等框架进行整合,
降低了框架之间的耦合度
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 25岁的心里话
· 按钮权限的设计及实现