美文网首页
JAVA 核心笔记 || [xxx] Spring 之 Java

JAVA 核心笔记 || [xxx] Spring 之 Java

作者: 魔介 | 来源:发表于2018-12-05 10:21 被阅读0次

    JavaConfig 注解

    作用:将Bean 配置 在 JAVA 类中

    用法

    App.java

    import com.mj.bean.*;
    import com.mj.bean.annotation.BeanConfig;
    import com.mj.bean.annotation.BeanPerson;
    import com.mj.bean.annotation.IBean;
    import org.springframework.context.ApplicationContext;
    import org.springframework.context.annotation.AnnotationConfigApplicationContext;
    import org.springframework.context.support.ClassPathXmlApplicationContext;
    import org.springframework.context.support.FileSystemXmlApplicationContext;
    
    import java.io.FileNotFoundException;
    
    public class App {
    
    
    
        public static void main(String args[]) throws FileNotFoundException{
            /*
            //ClassPathXmlApplicationContext
            ApplicationContext context = new ClassPathXmlApplicationContext("com/mj/xml/Bean.xml");
            BeanSay sa = (BeanSay) context.getBean("BeanSay");
            sa.setMsg("__Spring");
            sa.talk();
    
            //FileSystemXmlApplicationContext
            ApplicationContext fileContext = new FileSystemXmlApplicationContext("/src/com/mj/xml/Bean.xml");
            BeanSay sa1 = (BeanSay) fileContext.getBean("BeanSay");
            sa1.setMsg("=Spring====");
            sa1.talk();
    
            ApplicationContext animalContext = new ClassPathXmlApplicationContext("com/mj/xml/Bean.xml");
            BeanAnimal ani =  (BeanAnimal) animalContext.getBean("Animal");
            ani.setAnimalName("dog");
            ani.showAnimal();
    
            BeanAnimal animal =  (BeanAnimal) animalContext.getBean("Animal");
            animal.setAnimalName("pig");
            animal.showAnimal();
    
            // init method   destroy method
            BeanLife life = (BeanLife) context.getBean("BeanLife");
            life.showName();
    
            //BeanDog 继承  BeanAnimal
            BeanDog dog = (BeanDog)context.getBean("BeanDog");
            dog.showAnimal();
            //加载多配置文件
            BeanUser user = (BeanUser)context.getBean("BeanUser");
            user.showUser();
            */
    
            ApplicationContext annotationCtx = new AnnotationConfigApplicationContext(BeanConfig.class);
            IBean beanPerson = (IBean) annotationCtx.getBean("beanPerson");
            beanPerson.show();
    
        }
    }
    
    

    BeanConfig.java

    package com.mj.bean.annotation;
    
    import org.springframework.context.annotation.Bean;
    import org.springframework.context.annotation.Configuration;
    
    @Configuration
    public class BeanConfig {
    
        @Bean(name="beanPerson")
        public IBean beanPerson(){
            return new BeanPerson();
        }
    }
    
    

    IBean.java

    package com.mj.bean.annotation;
    
    public interface IBean {
    
        public  void show();
    }
    
    

    BeanPerson.java

    package com.mj.bean.annotation;
    
    public class BeanPerson implements IBean {
        private String cName = "BeanPerson";
        @Override
        public void show(){
            System.out.println( cName );
        }
    
        public void setcName(String cName) {
            this.cName = cName;
        }
    
    }
    
    

    运行

    BeanPerson
    

    相关文章

      网友评论

          本文标题:JAVA 核心笔记 || [xxx] Spring 之 Java

          本文链接:https://www.haomeiwen.com/subject/sdkicqtx.html