三、Spring中的Java配置类

Chinese.java

package entity;



import inter.Axe;
import inter.Persion;

public class Chinese implements Persion {

    private Axe axe;
    private String name;
    public void setAxe(Axe axe) {
        this.axe = axe;
    }
    public void setName(String name) {
        this.name = name;
    }
    @Override
    public void useAxe() {
        // TODO Auto-generated method stub
        System.out.println("我是:"+name+axe.chop());
    }

    

}

AppConfig.java

package inter;

import org.springframework.beans.factory.annotation.Value;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;

import entity.Chinese;
import entity.StoneAxe;

@Configuration
public class AppConfig {

    //相当于定义一个名为persionName的变量,其值为Jakee
    @Value("Jekee") 
    String persionName;
    
    @Bean(name="chinese")
    public Persion persion()
    {
        Chinese p=new Chinese();
        p.setAxe(null);
        p.setName(persionName);
        return p;
    }
    
    @Bean(name="chinese")
    public Axe stoneAxe()
    {
        return new StoneAxe();
    }
}

  • @Configuration:用于修饰一个Java配置类。
  • Bean:用于修饰一个方法,该方法的返回值定义成容器中的一个Bean。
  • Value:用于修饰一个Field,用于为该Field配置一个值,相当于配置一个变量。
  • Import:用于修饰一个Java配置类,用于向当前Java配置类中导入其他的Java配置类。
  • Scope:用于修饰一个方法,指定该方法对应的Bean的生命域。
  • Lazy:用于修饰一个方法,指定该方法对应的Bean是否需要延迟初始化。
  • DespendsOn:用于修饰一个方法,指定在在初始化对应方法之前初始化指定的Bean。

1、如果以xml配置为主,需要在xml中加载Java配置类,代码如下:

<?xml version="1.0" encoding="UTF-8"?>
<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.xsd
        http://www.springframework.org/schema/context
        http://www.springframework.org/schema/context/spring-context.xsd" >
    <context:annotation-config/>
    <!-- 加载Java配置类 -->
    <bean class="inter.AppConfig"/>
</beans>

2、如果以Java配置类为主,需要在Java配置类中加载xml配置,代码如下:

@Configuration
@ImportResource("classpath:/beans.xml")
public class AppConfig()
{
    .............
}
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 135,771评论 19 139
  • 1. Java基础部分 基础部分的顺序:基本语法,类相关的语法,内部类的语法,继承相关的语法,异常的语法,线程的语...
    子非鱼_t_阅读 32,093评论 18 399
  • Spring Boot 参考指南 介绍 转载自:https://www.gitbook.com/book/qbgb...
    毛宇鹏阅读 47,104评论 6 342
  • 偶尔阅读了简书出版的一位作者的忠告,估计她是年轻有为吧,看到那句:“二十多岁就是要拼搏,不要等到三四十岁...
    悠云小筑阅读 3,265评论 1 7
  • 岁月,人生 ~西凉举子 岁月是一条长长的河 你掀起浪花有几朵 人生是一支悠悠的曲 你放声歌唱了么
    西凉举子阅读 1,462评论 0 1