你的位置:首页 > 软件开发 > Java > spring开发_使用p名称空间配置属性

spring开发_使用p名称空间配置属性

发布时间:2012-03-12 14:00:37
项目结构:http://www.cnblogs.com/hongten/gallery/image/112563.html/spring_1400_p名称空间/src/com/b510/app/test/SpringTest.java 1 package com.b510.app.test; 2 3 import org.springframework.context.ApplicationCo ...

项目结构:

http://www.cnblogs.com/hongten/gallery/image/112563.html

/spring_1400_p名称空间/src/com/b510/app/test/SpringTest.java

 1 package com.b510.app.test;
2
3 import org.springframework.context.ApplicationContext;
4 import org.springframework.context.support.ClassPath 5
6 import com.b510.service.AnimalService;
7
8 public class SpringTest {
9 public static void main(String[] args) {
10 ApplicationContext act = new ClassPath11 // 获取id为animaleServiceOfDog的Bean
12 AnimalService animalServiceOfDog = (AnimalService) act
13 .getBean("animaleServiceOfDog");
14 animalServiceOfDog.getInfo();
15 // 获取id为animaleServiceOfCat的Bean
16 AnimalService animalServiceOfCat = (AnimalService) act
17 .getBean("animaleServiceOfCat");
18 animalServiceOfCat.getInfo();
19 }
20 }

/spring_1400_p名称空间/src/com/b510/service/AnimalService.java

 1 package com.b510.service;
2
3 /**
4 * 动物抽象类
5 *
6 * @author Hongten
7 *
8 */
9 public interface AnimalService {
10
11 /**
12 * 获取相关信息
13 */
14 public abstract void getInfo();
15
16 }

/spring_1400_p名称空间/src/com/b510/service/MeatService.java

 1 package com.b510.service;
2
3 /**
4 * 定义抽象类MeatService肉类
5 *
6 * @author Hongten
7 *
8 */
9 public interface MeatService {
10
11 /**
12 * 定义方法whatMeat
13 *
14 * @return 返回一个字符串
15 */
16 public abstract String whatMeat();
17 }

/spring_1400_p名称空间/src/com/b510/service/impl/CatServiceBean.java

 1 package com.b510.service.impl;
2
3 import com.b510.service.AnimalService;
4 import com.b510.service.MeatService;
5
6 /**
7 * 定义猫类实现AnimaleService抽象类
8 *
9 * @author Hongten
10 *
11 */
12 public class CatServiceBean implements AnimalService {
13 private int age;
14 private MeatService meatService;
15
16 public int getAge() {
17 return age;
18 }
19
20 public void setAge(int age) {
21 this.age = age;
22 }
23
24 @Override
25 public void getInfo() {
26 System.out.println("我是猫,我的年龄是:"+age+",我很喜欢吃"+meatService.whatMeat());
27 }
28
29 public MeatService getMeatService() {
30 return meatService;
31 }
32
33 public void setMeatService(MeatService meatService) {
34 this.meatService = meatService;
35 }
36
37
38 }

/spring_1400_p名称空间/src/com/b510/service/impl/DogServiceBean.java

 1 package com.b510.service.impl;
2
3 import com.b510.service.AnimalService;
4 import com.b510.service.MeatService;
5
6 /**
7 * 定义DogServiceBean类
8 *
9 * @author Hongten
10 *
11 */
12 public class DogServiceBean implements AnimalService {
13 private int age;
14 private MeatService meatService;
15
16 public MeatService getMeatService() {
17 return meatService;
18 }
19
20 public void setMeatService(MeatService meatService) {
21 this.meatService = meatService;
22 }
23
24 public int getAge() {
25 return age;
26 }
27
28 public void setAge(int age) {
29 this.age = age;
30 }
31
32 @Override
33 public void getInfo() {
34 System.out.println("我是狗,我的年龄是:" + age + ",我很喜欢吃"
35 + meatService.whatMeat());
36 }
37
38 }

/spring_1400_p名称空间/src/com/b510/service/impl/FishServiceBean.java

 1 package com.b510.service.impl;
2
3 import com.b510.service.MeatService;
4
5 /**
6 * 定义鱼肉实现MeatService抽象类
7 *
8 * @author Hongten
9 *
10 */
11 public class FishServiceBean implements MeatService {
12
13 @Override
14 public String whatMeat() {
15 return "鱼肉";
16 }
17
18 }

/spring_1400_p名称空间/src/com/b510/service/impl/PorkServiceBean.java

 1 package com.b510.service.impl;
2
3 import com.b510.service.MeatService;
4
5 /**
6 * 定义猪肉实现MeatService抽象类
7 *
8 * @author Hongten
9 *
10 */
11 public class PorkServiceBean implements MeatService {
12
13 @Override
14 public String whatMeat() {
15 return "猪肉";
16 }
17
18 }

/spring_1400_p名称空间/src/beans.

 1 <? 2     <!-- Spring配置文件的根元素,使用spring-beans-3.0.xsd语义约束 -->
3 <beans 4 5 xsi:schemaLocation="http://www.springframework.org/schema/beans
6 http://www.springframework.org/schema/beans/spring-beans-3.0.xsd">
7 <bean id="meatServiceOfFish" ></bean>
8 <bean id="meatServiceOfPork" ></bean>
9 <bean id="animaleServiceOfDog"
10 p:age="12" p:meatService-ref="meatServiceOfPork" />
11 <bean id="animaleServiceOfCat"
12 p:age="3" p:meatService-ref="meatServiceOfFish" />
13 </beans>

使用p名称空间没有标准的

不会出现这样的错误滴!!!

运行结果:

 

 1 2012-3-12 12:58:51 org.springframework.context.support.AbstractApplicationContext prepareRefresh
2 信息: Refreshing org.springframework.context.support.ClassPath 3 2012-3-12 12:58:51 org.springframework.beans.factory. 4 信息: Loading class path resource [beans. 5 2012-3-12 12:58:54 org.springframework.context.support.AbstractApplicationContext obtainFreshBeanFactory
6 信息: Bean factory for application context [org.springframework.context.support.ClassPath 7 2012-3-12 12:58:54 org.springframework.beans.factory.support.DefaultListableBeanFactory preInstantiateSingletons
8 信息: Pre-instantiating singletons in org.springframework.beans.factory.support.DefaultListableBeanFactory@111a775: defining beans [meatServiceOfFish,meatServiceOfPork,animaleServiceOfDog,animaleServiceOfCat]; root of factory hierarchy
9 我是狗,我的年龄是:12,我很喜欢吃猪肉
10 我是猫,我的年龄是:3,我很喜欢吃鱼肉


原标题:spring开发_使用p名称空间配置属性

关键词:java,spring,nameSpace,p名称空间

*特别声明:以上内容来自于网络收集,著作权属原作者所有,如有侵权,请联系我们: admin#shaoqun.com (#换成@)。