zoukankan      html  css  js  c++  java
  • spring 内部bean实例

    第一步:新建工程  SecondSpring

    工程目录结构如下:

    第二步:导入相应的jar包

    略...

    第三步:新建类

    InnerBean.java

    package com.xuzhiwen.spring2;
    
    public class InnerBean {
        
        private int id;
        private String name;
        
        public void setId(int id) {
            this.id = id;
        }
        
        public void setName(String name) {
            this.name = name;
        }
        
        @Override
        public String toString() {
            return "InnerBean [id=" + id + ", name=" + name + "]";
        }
    
        public void inner(){
            System.out.println(this);
            System.out.println("InnerBean.inner()...");
        }
        
    }

    第四步: 新建类

    OutterBean.java

    package com.xuzhiwen.spring2;
    
    public class OutterBean {
        private InnerBean innerBean;
    
        public void setInnerBean(InnerBean innerBean) {
            this.innerBean = innerBean;
        }
        
        
        public OutterBean(InnerBean innerBean) {
            this.innerBean = innerBean;
        }
    
    
        public void outter(){
            System.out.println("OutterBean.outter()...");
            innerBean.inner();
        }
    }

    第五步:新建配置文件

    innerbean.xml

    <beans xmlns="http://www.springframework.org/schema/beans"
        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        xmlns:p="http://www.springframework.org/schema/p"
        xsi:schemaLocation="http://www.springframework.org/schema/beans
        http://www.springframework.org/schema/beans/spring-beans-2.5.xsd">
        
       <bean id
    ="outter" class="com.xuzhiwen.spring2.OutterBean">
         <!--setter 方式注入--> <property name
    ="innerBean"> <bean class="com.xuzhiwen.spring2.InnerBean"> <property name="id" value="2" /> <property name="name" value="test1" /> </bean> </property>
         <!--构造器 方式注入-->  <!-- <constructor-arg> <bean class
    ="com.xuzhiwen.spring2.InnerBean"> <property name="id" value="2" /> <property name="name" value="test1" /> </bean> </constructor-arg> --> </bean> </beans>

    第六步:新建配置文件

    common.xml

    <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-2.5.xsd">
        
        <import resource="xmlfolder/app1.xml" />
        <import resource="xmlfolder/innerbean.xml" />
    </beans>    

    第七步:新建测试类

    Test.java

    package com.xuzhiwen.spring2;
    
    import org.springframework.context.ApplicationContext;
    import org.springframework.context.support.ClassPathXmlApplicationContext;
    
    public class Test {
        public static void main(String[] args) {
            ApplicationContext app = new ClassPathXmlApplicationContext("common.xml");
            OutterBean out = (OutterBean) app.getBean("outter");
            out.outter();
        }
    }

    第八步: 运行结果如下

  • 相关阅读:
    简单的Vue示例
    Vue开发环境搭建基本操作
    2020CentOS官网下载镜像方法
    while((ch=getchar()) !=EOF && ch != ' ');语句作用
    Mac 下使用svn
    用树形结构递归渲染权限列表
    .net core中使用jwt进行认证
    C#中异步多线程的实现方式
    redis-避免生产环境使用keys命令
    让visual studio总是以管理员身份启动
  • 原文地址:https://www.cnblogs.com/beibidewomen/p/7388684.html
Copyright © 2011-2022 走看看