声明:
本人完全是一个技术小白,目前在自己学习ssm框架(Spring+Spring MVC+MyBatis),内容均为本人心得和本人的资料整理,肯定有局限与不当之处,当然也欢迎大佬们指教!谢谢!
正文部分
1.Spring简介:
Spring是一个轻量级的java开发框架,由Rod Johnson创建,主要是为了解决程序各层的耦合问题。什么是耦合问题?就是以前在学习java基础的时候,在程序实例化实现的过程中,一定要手动输入实例化代码,现在我们把实例化这个“主动权”交给框架来实现,即“解耦”。
2.Spring体系结构:
3.核心容器:
其他模块建立的基础,由Spring-core, Spring-beans, Spring-context, Spring-context-support,Spring-expression组成。
Spring-core:框架的基本组成部分,具有控制反转(IoC,Inversion of Control)和依赖注入(DI,Dependency Injection)功能。(控制反转即“解耦”,依赖注入可以理解为控制反转的逆操作,即把实例化的主动权“交还”给程序员)(对应Core Container中的Core)
Spring-beans:工厂模式的实现,提供BeanFactory。(工厂模式是解耦的一个方法,主要是降低代码冗余度(重复度),使程序员直接调用现成的代码(不重复造轮子的思想),减少创建对象过程中的错误概率)(对应Core Container中的Beans)
Spring-context:在Core和Beans模块基础上建立的,是访问和配置任何对象的媒介,ApplicationContext接口是Context模块的重心。(在本人后续的学习中可能会用到ApplicationContext的ClassPathXmlApplicationContext实现类,当然,它还有FileSystemXmlApplicationContext的实现类,一个是从类路径加载配置文件,一个是文件系统中装载配置文件)(对应Core Container中的Context)
Spring-context-support:对整合第三方库到Spring应用程序的上下文的支持。(对应Core Container中的Context)
Spring-expression:提供强大的表达式语言来支持运行时查询和操作对象图。(表达式有很多种比如:字符串,日期,数值,布尔和空,逻辑表达式,算术运算表达式,正则表达式,括号优先级,类类型,类实例化,赋值,三目运算等诸多表达式(不一一列举了))(对应Core Container中的SqEl)
再次声明:
本人完全是一个技术小白,目前在自己学习ssm框架(Spring+Spring MVC+MyBatis),内容均为本人心得和本人的资料整理,肯定有局限与不当之处,当然也欢迎大佬们指教!谢谢!
由于本人学习能力有限,更新较慢,请读者朋友谅解!!