zoukankan      html  css  js  c++  java
  • bean 装配

    1.装配方式

    (1)在xml进行显式装配

    (2)在java中进行显式装配

    (3)隐式的bean发现机制和自动装配

    2.装配方式(3)实现

    (1)创建bean

    /**
    * @component告诉spring要为这个类创建bean,同时可以为bean设置别名,默认为类名首字母小写
    */
    @Component("sgtPeppers")
    public class SgtPeppers implements CompactDisc {
    public void play() {

    }
    }

    (2)启用组件扫描

    /**
     * @componentScan设置spring扫描组件的包路径,默认为与配置文件即本类相同包及其子类,可以通过包路径设置也可以通过类或接口设置
     */
    @Configuration
    @ComponentScan(basePackages = "cn.edu.service.impl")
    public class CdPlayConfig {
    }

    注:使用xml配置文件也可以启用组件扫描

    (3)自动装配

    @RunWith(SpringJUnit4ClassRunner.class)
    @ContextConfiguration(classes = CdPlayConfig.class)
    public class PlayTest {
        //实现自动装配
        @Autowired
        private CompactDisc com;
    
        @Test
        public void test(){
            assertNotNull(com);
        }
    }

    3.装配方式(2)实现

    /**
     * @Configuration表明该类是一个配置类。
     */
    @Configuration
    public class CdPlayConfig {
        //告诉bean返回一个对象,并且该对象注册到spring应用上下文的bean
        @Bean(name="compactDist")
        public CompactDisc getDisc(){
            return new SgtPeppers();
        }
        public CDPlayer getplayer(){
            //注入bean
            return new CDPlayer(getDisc());
        }
    }

    (3)装配方式(1)实现

    <?xml version="1.0" encoding="UTF-8"?>
    <beans xmlns="http://www.springframework.org/schema/beans"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd">
    <beans>
    <bean id = "compactDisc" class="cn.edu.pojo.CDPlayer">
    <!--通过配置配件给构造器注入值,还可以给属性中的值注入值-->
    <constructor-arg ref=""/>
    </bean>
    </beans>

    </beans>
  • 相关阅读:
    get请求中文乱码问题
    JDBC
    SpringSecurity
    IDEA中创建项目
    Vue路由传参的几种方式
    vue-cli搭建与使用
    docker发布springboot项目
    css伪类的使用
    java实体类序列化与反序列化
    docker网络
  • 原文地址:https://www.cnblogs.com/yxqing/p/10749053.html
Copyright © 2011-2022 走看看