跟着远叔学Spring系列(二)——Spring概述

Spring是一个基于POJO的Java开发框架,有了它,企业级应用的开发如有神助。Spring这么厉害,其实是基于它的两大特性——DI和AOP。DI是什么呢,英文全称为Dependency Injection,意为依赖注入,AOP的英文全称为Aspect Oriented Programming,意为面向方面编程,听起来云里雾里的,别急,待远叔慢慢道来。

DI——依赖注入,是Spring中用来进行松耦合的技术,松耦合是啥,松耦合就是是使对象之间的影响尽量减少,当一个对象改变时不会给它的小伙伴们带来更改的麻烦。那么依赖注入呢,就是对象被动接收依赖类,而不是自己去new一个对象,对于懒惰的程序员来说无疑是一大福音呐,当然,勤奋的程序员更需要它来节省开发时间。

AOP——面向切面编程,听起来很抽象,其实没什么,Spring通过它可以将一些通用的服务如日志,事务从业务逻辑中抽出来,并为多个业务逻辑提供服务,大大提高代码的复用性。

那么Spring是如何实现这两大特性呢,答案就是…………..通过一坨代码咯

SPring

核心容器
核心容器为其他模块提供基础功能,提供BeanFactory类,可用来装载Bean,是整个框架的基石。
Context(上下文)
此模块在BeanFactory的基础上更上一层,它扩展了BeanFactory,添加了对I18N【1】(国际化),应用的生命周期以及验证功能,更过分的是,此模块还提供了很多企业级服务,如电子邮件,JNDI【2】,EJB集成,远程调用及定时服务,并且支持与模板框架的集成,简直强大到没朋友……
AOP
此模块就是前面提到的AOP特性的源头,AOP 模块提供了多种方法建立切面,后面将详细讲解。
DAO
英文全称为Data Access Object,意为数据访问对象,简单来说就是跟数据交互的工具,本模块对以往访问数据库繁琐的JDBC语句进行了封装,使代码更简洁,同时还对各种数据库错误信息进行了封装,更加容易理解哦。
ORM
英文全称为Object Relation Model,意为对象映射模型,即将数据库表和Java对象一一对应,还是用来进行数据库访问,强大之处是可以与已有的ORM框架如hibernate,JDO ,iBATIS进行集成,更加强大。
MVC
即大名鼎鼎的Model-View-Controller模式,关于这个模式一定要了解,Spring采用MVC模式进行分层,对Web应用进行松耦合。
Web
为MVC模块提供支持,同时也提供几个面向Web的业务。
以上就是Spring的七大模块,其实,Spring还有如JMX【3】,JCA【4】,JMS【5】这样的小模块,后面讲详细讲解。

以上,就是Spring的大致内容,需要反复强调的一点是,Spring并不是要推翻已有技术,而是让开发者更好地利用已有技术,Spring在其中大概相当于粘合剂吧

下一期,将对DI进行简单的讲解,DI是Spring最基本的特性,也是非常重要的特性。

本期问题:呃……还没想好

注释:
【1】来源是英文单词 internationalization的首末字符i和n,18为中间的字符数,国际化的简称,指让产品(出版物,软件,硬件等)无需做大的改变就能够适应不同的语言和地区的需要。对程序来说,在不修改内部代码的情况下,能根据不同语言及地区显示相应的界面。 —源自百度百科

【2】Java Naming and Directory Interface,Java命名和目录接口,是SUN公司提供的一种标准的Java命名系统接口,JNDI提供统一的客户端API,通过不同的访问提供者接口JNDI服务供应接口(SPI)的实现,由管理者将JNDI API映射为特定的命名服务和目录系统,使得Java应用程序可以和这些命名服务和目录服务之间进行交互。 —源自百度百科

【3】Java Management Extensions,即Java管理扩展,是一个为应用程序、设备、系统等植入管理功能的框架。JMX可以跨越一系列异构操作系统平台、系统体系结构和网络传输协议,灵活的开发无缝集成的系统、网络和服务管理应用。 —源自百度百科

【4】J2EE 连接器架构,Java Connector Architecture,是对J2EE标准集的重要补充,注重于Java程序连接到非Java程序和软件包中间件的开发。 —源自百度百科

【5】Java消息服务(Java Message Service)应用程序接口,是一个Java平台中关于面向消息中间件(MOM)的API,用于在两个应用程序之间,或分布式系统中发送消息,进行异步通信。 —源自百度百科

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值