Spring一些基本概念

Spring一些基本概念

 

轻量级  

组件小,库小

Spring 在某种意义上是 EJB 的替代品,她是一种轻量级的容器。用过 EJB 的人都知道 EJB 很复杂,为了一个简单的功能你不得不编写多个 Java 文件和部署文件,他是一种重量级的容器。

 

非入侵式

 

重量级容器是一种入侵式的也就是说你要用 EJB 提供的功能就必须在你的代码中体现 出来你使用的是 EJB ,比如继承一个接口,声明一个成员变量。这样就把你的代码绑定在 EJB 技术上了

 

相对而言“轻量级”就是非入侵式的,用 Spring 开发的系统中的类不需

要依赖 Spring 中的类,不需要容器支持(当然 Spring 本身是一个容器),而且

Spring 的大小和运行开支都很微量

 

 

容器

为容器提供一个运行环境,

 

IOC/DI

IoC 的全称是 Inversion of Control ,中文翻译反向控制或者逆向控制

反转控制,另一个名字依赖注入,

控制权的转移即是所谓的反转。

 

依赖注入

为调用者对象设置被调用者对象

接口注入

构造注入

设置注入 (set/get)

 

AOP

AOP 全称是 Aspect-Oriented Programming ,中文翻译是面向方面的编程或者面向切面的编程。 你应该熟悉面向过程的编程,面向对象的编程,但是面向切面的编程你也许是第一次听说

 

 

POJO

我所看到过的 POJO 全称有两个, Plain Ordinary Java Object Plain Old Java

Object ,两个差不多,意思都是普通的 Java 类,所以也不用去管谁对谁错。 POJO

可以看做是简单的 JavaBean (具有一系列 Getter Setter 方法的类)。严格区分

这里面的概念没有太大意义,了解一下就行。

 

应用 Spring 中的切面

Spring 生来支持 AOP ,首先来看几个概念:

 

1、   切面( Aspect ):

切面是系统中抽象出来的的某一个功能模块,上文已经有过介绍,这里不再多说。

2 、 通知( Advice

通知是切面的具体实现。也就是说你的切面要完成什么功能,具体怎么做就是在通知里面完成的。这个名称似乎有点让人费解,等后面看了

代码就明白了。

 

3 切入点( Pointcut ):

切入点定义了通知应该应用到系统的哪些地方。

Spring 只能控制到方法(有的 AOP 框架可以控制到属性),也就是说你能在方法调用之前或者之后选择切入,执行额外的操作。

 

2、   目标对象( Target ):

目标对象是被通知的对象。它可以是任何类,包括你自己

编写的或者第三方类。有了 AOP 以后,目标对象就只需要关注自己的核心业务,其他的功能,比如日志,就由 AOP 框架支持完成。

 

3、    代理( Proxy

简单的讲,代理就是将通知    应用到目标对象后产生的对象。

Spring 在运行时会给每个目标对象生成一个代理对象,以后所有对目标对象的操作都

会通过代理对象来完成。只有这样通知才可能切入目标对象。对系统的其他部

分来说,这个过程是透明的,也就是看起来跟没用代理一样。

 

 

“连接点( Jointpoint ??

 

 

 

 

posted on 2009-03-29 11:47 luofeng225 阅读(190) 评论(0)  编辑  收藏 所属分类: Spring


只有注册用户登录后才能发表评论。


网站导航:
 
<2009年3月>
22232425262728
1234567
891011121314
15161718192021
22232425262728
2930311234

导航

统计

公告

我曾经听到这么一个故事: 一个年轻的程序员问一个老程序员(一个比较牛逼的公司的CTO) 年轻程序员: 你为什么这么牛X., 就好像没有你不会的。老程序员: 积累的。年轻程序员: 怎么才能积累到您的程度呢。我每天都在积累。但是似乎都没有感觉到进步。老程序员: 我从20岁开始做到了一件事情,直到今天,而且尽可能地保证不间断。年轻程序员: 到底是什么? 老程序员: 我每天保证自己有2个小时在学习新的东西。

常用链接

留言簿(3)

随笔分类

随笔档案

文章分类

相册

收藏夹

Java Website

java技术博客

搜索

最新评论

阅读排行榜

评论排行榜