大大毛
的笔记
  DDM's Note
哪怕没有办法一定有说法,
就算没有鸽子一定有乌鸦,
固执无罪 梦想有价,
让他们惊讶.
posts - 14, comments - 23, trackbacks - 0, articles - 58
::
首页
:: ::
联系
:: ::
管理
夏昕spring学习笔记--02
Posted on 2006-03-15 17:55
大大毛
阅读(451)
评论(0)
编辑
收藏
所属分类:
Spring
备查:放上书上所写的Bean配置及调用方式:
xml version="1.0" encoding="UTF-8"?>
<!
DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN" "http://www.springframework.org/dtd/spring-beans.dtd"
>
<
beans
>
<
description
>
Spring Bean Configuration Sample
</
description
>
<
bean
id
="TheAction"
⑴
class
="net.xiaxin.spring.qs.UpperAction"
⑵
singleton
="true"
⑶
init-method
="init"
⑷
destroy-method
="cleanup"
⑸
depends-on
="ActionManager"
⑹
>
<
property
name
="message"
>
<
value
>
HeLLo
</
value
>
⑺
</
property
>
<
property
name
="desc"
>
<
null
/>
</
property
>
<
property
name
="dataSource"
>
<
ref
local
="dataSource"
/>
⑻
</
property
>
</
bean
>
<
bean
id
="dataSource"
class
="org.springframework.jndi.JndiObjectFactoryBean"
>
<
property
name
="jndiName"
>
<
value
>
java:comp/env/jdbc/sample
</
value
>
</
property
>
</
bean
>
</
beans
>
里面需要留意的就是空值及引用的写法,测试中好象不加入那条DTD的定义,总报不合法的XML定义错误。
--使用:
InputStream is
=
new
FileInputStream(
"
beans.xml
"
);
XmlBeanFactory factory
=
new
XmlBeanFactory(is);
Action action
=
(Action) factory.getBean(
"
TheAction
"
);
或
ApplicationContext ac
=
new
FileSystemXmlApplicationContext(
"
beans.xml
"
);
Action action
=
(Action)ac.getBean(
"
TheAction
"
);
再有里面提到有“热布署”的名词,应该就等同于:
public
class
MyProperties
{
private
String fileName
=
null
;
private
File propFile
=
null
;
private
long
lastModified ;
public
MyProperties(String fileName)
{
this
.fileName
=
fileName;
}
private
void
loadPropFile()
{
this
.propFile
=
new
File(
this
.fileName);
}
private
boolean
isChanged()
{
boolean
changed
=
false
;
if
(
this
.propFile.lastModified()
!=
this
.lastModified)
{
changed
=
true
;
}
return
changed;
}
public
Object getProp(String propName)
{
if
(isChanged())
{
this
.loadPropFile();
}
.;
}
}
事件传播机制:
基于观察者模式的实现。
由ApplicationContext负责通知全部实现了ApplicationListener接口的Bean,应该是不能实现分类通知的。
在例子中使用了instanceof这类的类型判断,将Listener与Event牢牢挂住了,感觉不是很爽。
我的想法是:只在ApplictionContext中定义一个ApplictionListener,让它充当分发器和缺省Event处理器的角色;在ActionEvent之上再封一个接口ActionEventEx,扩展一个接口getEvnetType,让全部的ActionEvent实例都实现自ActionEventEx接口。并在ApplictionListener中实现一个BeanFactory,根据ActionEvent的实例,强转至ActionEventEx,取得eventType,再从ApplictionContext中取得对应的Bean来处理事件。
新用户注册
刷新评论列表
只有注册用户
登录
后才能发表评论。
网站导航:
博客园
IT新闻
Chat2DB
C++博客
博问
管理
相关文章:
夏昕spring学习笔记--02
夏昕spring学习笔记--01
手工添加MyEclipse的XML文件模板
Powered by:
BlogJava
Copyright © 大大毛
日历
<
2024年12月
>
日
一
二
三
四
五
六
24
25
26
27
28
29
30
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
31
1
2
3
4
公告
果然是不能想得太好。
随笔分类
(4)
VB培训(4)
文章分类
(59)
JAVA
(6)
Spring
(3)
Hibernate
Struts
(12)
NET
VB
(2)
ASP
(1)
ASP.NET
(6)
HTML
(3)
400
(2)
I4.0
Nifi
(5)
Angular
(1)
SQL
(15)
常用算法
(1)
其它
(2)
积分与排名
积分 - 59488
排名 - 876
最新评论
1. re: 手工添加MyEclipse的XML文件模板[未登录]
请问,eclipse下面有没有呢?现在想要实现eclipse的xml的模板进行配置修改,简单说,就是把新建时候的名字作为其中的一个tag;找了很久没有找到方法
--allen
2. re: 第二章 Visual Basic 基础语法
受益匪浅,多谢!
--yuleself
3. re: 数字填空
评论内容较长,点击标题查看
--去去去去去去去去去去去去去去去去去去去去去去去去去去去去去去去去去去去去去去去去去去去去去去去去去去
4. re: Checkbox联动演示
dcdc
--dcd
5. re: 利用TN5250NF下載檔案的自動化處理
請教若密碼要動態生成,是否有辦法呢?
謝謝
--江佳桂
i am ddm