目录
当前位置: 首页 > 文档资料 > Java 经验分享 >

Spring中怎么用

优质
小牛编辑
126浏览
2023-12-01

我们在Spring中是这样获取对象的:

public static void main(String[] args) {   
    ApplicationContext context = new FileSystemXmlApplicationContext("applicationContext.xml");   
    Lol lol = (Lol) context.getBean("lol");   
    lol.gank(); 
}

一起看看Spring如何让它生效呢,在 applicationContext.xml 配置文件中是酱紫的:

<bean id="lol" class="com.biezhi.test.Lol">
    <property name="name" value="剑圣" />   
</bean>

Lol 类是这样的:

public class Lol {

    private String name;

    public Lol() {
    }

    public void gank(){
        System.out.println(this.name + "在gank!!");
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }
}

上面的代码运行结果自然是 剑圣在gank!!

Spring更高级的用法,在3.0版本之后有了基于Annotation的注入实现,为毛每次都要配置 Xml 看到都蛋疼。。

首先还是要在 xml 中配置启用注解方式

<context:annotation-config/>

这样就能使用注解驱动依赖注入了,下面是一个使用场景

public class Lol {

    @Autowired
    private DuangService duangService ;

    public void buyDuang(String name, int money) {
        duangService.buy(name, money);
    }
}
@Service("duangService")
public class DuangService {

    public void buy(String name, int money){
        if(money > 0){
            System.out.println(name + "买了" + money + "毛钱的特效,装逼成功!");
        } else{
            System.out.println(name + "没钱还想装逼,真是匪夷所思");
        }
    }
}

这只是一个简单的例子,剑圣打野的时候想要买5毛钱的三杀特效,嗯。。虽然不符合逻辑

此时 DuangService 已经注入到 Lol 对象中,运行代码的结果(这里是例子,代码不能运行的)就是:

德玛买了5毛钱的特效,装逼成功!

好了,深入的不说了,我们不是学spring的,只是知道一下ioc在spring中高大上的形象,接下来步入正轨,开始设计一个IOC容器

links

  • 目录
  • 上一节: IOC的概念
  • 下一节: 设计一个IOC