欢迎来到天天文库
浏览记录
ID:33833307
大小:96.00 KB
页数:13页
时间:2019-03-01
《spring中ioc的入门实例》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、Spring中IoC的入门实例Spring的模块化是很强的,各个功能模块都是独立的,我们可以选择的使用。这一章先从Spring的IoC开始。所谓IoC就是一个用XML来定义生成对象的模式,我们看看如果来使用的。 数据模型 1、如下图所示有三个类,Human(人类)是接口,Chinese(中国人)是一个子类,American(美国人)是另外一个子类。 源代码如下:复制内容到剪贴板代码:packagecn.com.chengang.spring;publicinterfaceHuman{voideat();voidwalk();}packagecn.com.
2、chengang.spring;publicclassChineseimplementsHuman{/*(非Javadoc)*@seecn.com.chengang.spring.Human#eat()*/publicvoideat(){System.out.println("中国人对吃很有一套");}/*(非Javadoc)*@seecn.com.chengang.spring.Human#walk()*/publicvoidwalk(){System.out.println("中国人行如飞");}}packagecn.com.chengang.spring
3、;publicclassAmericanimplementsHuman{/*(非Javadoc)*@seecn.com.chengang.spring.Human#eat()*/publicvoideat(){System.out.println("美国人主要以面包为主");}/*(非Javadoc)*@seecn.com.chengang.spring.Human#walk()*/publicvoidwalk(){System.out.println("美国人以车代步,有四肢退化的趋势");}} 2、对以上对象采用工厂模式的用法如下 创建一个工厂类Fac
4、tory,如下。这个工厂类里定义了两个字符串常量,所标识不同的人种。getHuman方法根据传入参数的字串,来判断要生成什么样的人种。复制内容到剪贴板代码:packagecn.com.chengang.spring;publicclassFactory{publicfinalstaticStringCHINESE="Chinese";publicfinalstaticStringAMERICAN="American";publicHumangetHuman(Stringethnic){if(ethnic.equals(CHINESE))returnnewChi
5、nese();elseif(ethnic.equals(AMERICAN))returnnewAmerican();elsethrownewIllegalArgumentException("参数(人种)错误");}} 下面是一个测试的程序,使用工厂方法来得到了不同的“人种对象”,并执行相应的方法。复制内容到剪贴板代码:packagecn.com.chengang.spring;publicclassClientTest{publicstaticvoidmain(String[]args){Humanhuman=null;human=newFactory()
6、.getHuman(Factory.CHINESE);human.eat();human.walk();human=newFactory().getHuman(Factory.AMERICAN);human.eat();human.walk();}} 控制台的打印结果如下: 3、采用Spring的IoC的用法如下: 在项目根目录下创建一个bean.xml文件复制内容到剪贴板代码:<?xmlversion="1.0"encoding="UTF-8"?><!DOCTYPEbeansPUBLIC"-//SPRING//DTDBEAN//EN""http://w
7、ww.springframework.org/dtd/spring-beans.dtd"><beans><beanid="Chinese"class="cn.com.chengang.spring.Chinese"/><beanid="American"class="cn.com.chengang.spring.American"/></beans> bean.xml的位置如下图,注意不要看花眼把它看成是lib目录下的了,它是在myspring目录下的。 修改ClientTest程序如下:复制内容到剪贴板代码:packagecn.com.chengang.
8、spring;importorg.sp
此文档下载收益归作者所有