在考试前匆匆看了一遍Spring in Action 也没有记录什么,考试结束了,要抓紧时间整理一下.要不然就忘了.^_^:
整理一下我目前可能会用到的模块, 对于那些现在根本用不到的冬冬还是等有时间再研究吧!
第一个当然是最经典的HelloWorld 了 , 呵呵,简单,但是说明了原理.
定义一个服务接口
package
test.helloworld;
public interface
GreetingService {
public void
sayGreeting();
}
下面是其实现:
package
test.helloworld;
public class
GreetingServiceImpl
implements
GreetingService {
private
String greeting;
public
GreetingServiceImpl() {}
public
GreetingServiceImpl(String greeting) {
this
.greeting = greeting;
}
public void
sayGreeting() {
// Auto-generated method stub
System.out.println(greeting);
}
public void
setGreeting(String greeting) {
this
.greeting = greeting;
}
}
然后就是测试 IoC 的测试代码:
package
test.helloworld;
import
org.springframework.beans.factory.BeanFactory;
import
org.springframework.beans.factory.xml.XmlBeanFactory;
import
org.springframework.context.ApplicationContext;
import
org.springframework.context.support.ClassPathXmlApplicationContext;
import
org.springframework.core.io.FileSystemResource;
public class
HelloApp {
/**
*
@param
args
*/
public static void
main(String[] args) {
// TODO Auto-generated method stub
// BeanFactory factory;
// factory = new XmlBeanFactory(new FileSystemResource("src/test/helloworld/hello.xml"));
// 使用不同的方法得到bean. (BeanFactory or ApplicationContext)
ApplicationContext context =
new
ClassPathXmlApplicationContext(
"test/helloworld/hello.xml"
);
GreetingService greetingService = (GreetingService) context.getBean(
"greetingService"
);
// GreetingService greetingService = (GreetingService) factory.getBean("greetingService");
greetingService.sayGreeting();
}
}
还有重要的配置文件如下:hello.xml
<?
xml
version
=
"1.0"
encoding
=
"UTF-8"
?><!
DOCTYPE
beans
PUBLIC
"-//SPRING//DTD BEAN//EN"
"http://www.springframework.org/dtd/spring-beans.dtd"
>
<
beans
>
<
bean
id
=
"greetingService"
class
=
"test.helloworld.GreetingServiceImpl"
>
<
property
name
=
"greeting"
>
<
value
>
ice rain !
</
value
>
</
property
>
</
bean
></
beans
>
呵呵就这么简单,实现了 greeting 属性的 Ioc.
这是Spring 两大基本支柱其一的工作原理, 关于AoP的内容,在这里不作讨论,因为现在我使用AoP的地方不是很多,简单的应用是很简单的啦.^_^.
下面一篇我们来看看 在spring包装下的jdbc访问. 详细情况也可以参考这里