软件编程
位置:首页>> 软件编程>> java编程>> Spring实战之使用@Resource配置依赖操作示例

Spring实战之使用@Resource配置依赖操作示例

作者:cakincqm  发布时间:2023-08-06 10:11:13 

标签:Spring,@Resource,配置依赖

本文实例讲述了Spring使用@Resource配置依赖操作。分享给大家供大家参考,具体如下:

一 配置


<?xml version="1.0" encoding="GBK"?>
<beans xmlns="http://www.springframework.org/schema/beans"
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xmlns:context="http://www.springframework.org/schema/context"
  xsi:schemaLocation="http://www.springframework.org/schema/beans
  http://www.springframework.org/schema/beans/spring-beans-4.0.xsd
  http://www.springframework.org/schema/context
  http://www.springframework.org/schema/context/spring-context-4.0.xsd">
  <!-- 自动扫描指定包及其子包下的所有Bean类 -->
  <context:component-scan
     base-package="org.crazyit.app.service"/>
</beans>

二 接口

Axe


package org.crazyit.app.service;
public interface Axe
{
  public String chop();
}

Person


package org.crazyit.app.service;
public interface Person
{
  public void useAxe();
}

三 Bean

Chinese


package org.crazyit.app.service.impl;
import org.springframework.stereotype.*;
import javax.annotation.*;
import org.crazyit.app.service.*;
@Component
public class Chinese implements Person
{
 private Axe axe;
 // axe的setter方法
 @Resource(name="stoneAxe")
 public void setAxe(Axe axe)
 {
   this.axe = axe;
 }
 // 实现Person接口的useAxe()方法
 public void useAxe()
 {
   // 调用axe的chop()方法,
   // 表明Person对象依赖于axe对象
   System.out.println(axe.chop());
 }
}

SteelAxe


package org.crazyit.app.service.impl;
import org.springframework.stereotype.*;
import org.crazyit.app.service.*;
@Component
public class SteelAxe implements Axe
{
 public String chop()
 {
   return "钢斧砍柴真快";
 }
}

StoneAxe


package org.crazyit.app.service.impl;
import org.springframework.stereotype.*;
import org.crazyit.app.service.*;
@Component
public class StoneAxe implements Axe
{
 public String chop()
 {
   return "石斧砍柴好慢";
 }
}

四 测试类


package lee;
import org.springframework.context.*;
import org.springframework.context.support.*;
import org.crazyit.app.service.*;
public class BeanTest
{
 public static void main(String[] args)
 {
   // 创建Spring容器
   ApplicationContext ctx = new
     ClassPathXmlApplicationContext("beans.xml");
   Person person = ctx.getBean("chinese" , Person.class);
   person.useAxe();
 }
}

五 测试结果

石斧砍柴好慢

希望本文所述对大家java程序设计有所帮助。

来源:https://blog.csdn.net/chengqiuming/article/details/101170158

0
投稿

猜你喜欢

手机版 软件编程 asp之家 www.aspxhome.com