Cyh的博客
Email:kissyan4916@163.com
posts - 26, comments - 19, trackbacks - 0, articles - 220
导航
BlogJava
首页
新随笔
联系
聚合
管理
公告
一直努力努力努力,像奴隶奴隶奴隶!~~
<
2024年11月
>
日
一
二
三
四
五
六
27
28
29
30
31
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
1
2
3
4
5
6
7
常用链接
我的随笔
我的文章
我的评论
我的参与
最新评论
随笔档案
(25)
2011年5月 (1)
2010年4月 (12)
2010年1月 (1)
2009年12月 (2)
2009年6月 (1)
2009年4月 (4)
2009年2月 (4)
文章分类
(219)
Android(26)
DB(5)
J2EE(31)
J2SE(79)
JavaScript(15)
others(47)
SOA&Web Service(1)
中间件(1)
软件工程(12)
软件架构(2)
文章档案
(220)
2011年8月 (1)
2010年12月 (23)
2010年11月 (2)
2010年8月 (5)
2010年7月 (2)
2010年6月 (2)
2010年5月 (1)
2010年4月 (12)
2010年3月 (28)
2010年2月 (5)
2010年1月 (23)
2009年12月 (39)
2009年6月 (14)
2009年5月 (31)
2009年3月 (2)
2009年2月 (29)
2009年1月 (1)
新闻档案
(66)
2010年10月 (1)
2010年9月 (5)
2010年8月 (11)
2010年7月 (21)
2010年6月 (13)
2010年5月 (8)
2010年4月 (5)
2009年11月 (2)
相册
Ryan
收藏夹
(7)
JAVA(7)
最新随笔
1. 集成FCKeditor 3.5.3
2. android自适应屏幕方向和大小
3. Android游戏开发之旅(二十) 双按事件捕获
4. Android游戏开发之旅(十八) SoundPool类
5. Android游戏开发之旅(十九) 分辨率大全
6. Android游戏开发之旅(十七) 图像渐变特效
7. Android游戏开发之旅(十六) 异步音乐播放
8. Android游戏开发之旅(十四) 游戏开发实战一
9. Android游戏开发之旅(十五) 按键中断处理
10. Android游戏开发之旅(十二)Sensor重力感应(2)
搜索
最新评论
1. re: struts2 checkboxlist标签的使用
同居同意同意
--yuk
2. re: struts2 checkboxlist标签的使用
ss
--d
3. re: JavaMail(4)--使用POP3接收邮件
邮件信息可以打印出来,可是下载邮件会出错是什么原因?
--琳喵喵0721
4. re: JavaMail(4)--使用POP3接收邮件
评论内容较长,点击标题查看
--流风
5. re: 操作PDF文件
评论内容较长,点击标题查看
--ly.wolf
阅读排行榜
1. struts2 checkboxlist标签的使用(18223)
2. struts2异常拦截器(5857)
3. struts2迭代标签(3845)
4. 用freemind 秒杀Spring Security(1914)
5. 加载顺序会影响对spring bean 的调用。(1489)
Spring中的后处理
Posted on 2009-02-17 16:28
啥都写点
阅读(360)
评论(1)
编辑
收藏
所属分类:
J2EE
Spring
提供了两次机会,可以切入到
Bean
的生命周期中,
检查或者修改它的配置,这叫做后处理。后处理是在
Bean
实例化以及装配完成之后发生的。在
Bean
被创建以及装配之后,
BeanPostProcessor
接口为你提供了两次机会来修改这个
Bean
。
public
interface
BeanPostProcessor
{
Object postProcessBeforeInitialization(Object bean, String beanName)
throws
BeansException;
Object postProcessAfterInitialization(Object bean, String beanName)
throws
BeansException;
}
代码示例
public
class
Monkey
implements
BeanPostProcessor
{
public
Object postProcessAfterInitialization(Object bean, String name)
throws
BeansException
{
System.out.println(
"
BeanPostProcessor.postProcessAfterInitialization 正在预处理!
"
);
if
(bean
instanceof
MonkeyFriends)
{
MonkeyFriends mf
=
(MonkeyFriends)bean;
mf.setName1(
"
唐僧
"
);
mf.setName2(
"
猪八戒
"
);
mf.setName3(
"
沙僧
"
);
return
bean;
}
return
bean;
}
public
Object postProcessBeforeInitialization(Object bean, String name)
throws
BeansException
{
System.out.println(
"
BeanPostProcessor.postProcessBeforeInitialization 正在预处理!
"
);
return
bean;
}
MonkeyFriends类代码
public
class
MonkeyFriends
{
String name1;
String name2;
String name3;
public
String getNames()
{
return
"
Monkey's friends:
"
+
this
.name1
+
""
+
this
.name2
+
""
+
this
.name3;
…….省略getter、setter方法
}
applicationContext.xml中的配置:
monkeyfriends中name1、name2、name3中的值可以任意写
<
bean id
=
"
monkey
"
class
=
"
com.spring.IoC.Monkey
"
autowire
=
"
autodetect
"
>
<!--
<
constructor
-
arg ref
=
"
goldencudgel
"
/>
-->
<
property name
=
"
name
"
>
<
value
>
I
'
m Sun WuKong!!!!</value>
</
property
>
<!--
<
property name
=
"
goldencudgel
"
>
<
ref local
=
"
goldencudgel
"
/>
</
property
>
-->
</
bean
>
<
bean id
=
"
monkeyfriends
"
class
=
"
com.spring.IoC.MonkeyFriends
"
>
<
property name
=
"
name1
"
>
<
value
>
null
</
value
>
</
property
>
<
property name
=
"
name2
"
>
<
value
>
null
</
value
>
</
property
>
<
property name
=
"
name3
"
>
<
value
>
null
</
value
>
</
property
>
</
bean
>
<
bean id
=
"
goldencudgel
"
class
=
"
com.spring.IoC.Goldencudgel
"
/>
代码测试:
public
class
MainTest
{
public
static
void
main(String[] args)
{
ApplicationContext ac
=
new
ClassPathXmlApplicationContext(
"
applicationContext-*.xml
"
);
MonkeyFriends mf
=
(MonkeyFriends)ac.getBean(
"
monkeyfriends
"
);
System.out.println(mf.getNames());
//
monkey.Say();
//
monkey.useGoldencudgel();
}
}
运行结果:
BeanPostProcessor.postProcessBeforeInitialization 正在预处理!
BeanPostProcessor.postProcessAfterInitialization 正在预处理!
Monkey
'
s friends:唐僧猪八戒沙僧
--
学海无涯
Feedback
#
re: Spring中的后处理
回复
更多评论
2009-06-08 20:20 by
siyang
正在学习中支持
新用户注册
刷新评论列表
只有注册用户
登录
后才能发表评论。
网站导航:
博客园
IT新闻
知识库
C++博客
博问
管理
相关文章:
Eclipse下配置及使用Tomcat 6.0数据库连接池连接sqlserver2000 (转)
【转】使用命令行 Subversion 访问项目源文件
【转贴】Subversion权限详解
spring junit 测试(转)
struts2+Spring分页
Struts2 文件上传类型(转)
sturts2的上传和下载以及中文转码问题
笔记之Spring-JMS
Spring+JPA+Struts2整合
笔记之Spring-MVC
Powered by:
BlogJava
Copyright © 啥都写点