博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Spring-依赖注入-构造函数注入方式
阅读量:6150 次
发布时间:2019-06-21

本文共 2312 字,大约阅读时间需要 7 分钟。

创建项目

    项目名称:spring092601

2.引入spring jar包

    commons-logging.jar

    junit-4.4.jar

    log4j.jar

    spring-beans-3.2.0.RELEASE.jar

    spring-context-3.2.0.RELEASE.jar

    spring-core-3.2.0.RELEASE.jar

    spring-expression-3.2.0.RELEASE.jar

3.添加配置文件

    在项目中添加conf目录,在conf下添加spring的核心配置文件applicationContext.xml,配置如下:

    <?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:p="http://www.springframework.org/schema/p"

           xmlns:util="http://www.springframework.org/schema/util"

           xsi:schemaLocation="

    http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd

    http://www.springframework.org/schema/util http://www.springframework.org/schema/util/spring-util.xsd">

    </beans>

4.创建业务bean

    在src目录下创建

    包名:cn.jbit.spring092601.domain

    package cn.jbit.spring092601.domain;

    import java.io.Serializable;

    /**

     * 学校

     * @author Administrator

     *

     */

    public class School implements Serializable {

        private String name;//学校名称

        //无参构造函数

        public School() {

            super();

        }

        //带学校名称构造函数

        public School(String name) {

            super();

            this.name = name;

        }

        //get and set 方法区

        public void setName(String name) {

            this.name = name;

        }

        public String getName() {

            return name;

        }

    }

5.在配置文件中编写bean的配置,并注入属性值,也就是我们的DI(Dependency Injection)依赖注入,在这里通过构造函数注入方式实现。配置如下:

    <?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:p="http://www.springframework.org/schema/p"

           xmlns:util="http://www.springframework.org/schema/util"

           xsi:schemaLocation="

    http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd

    http://www.springframework.org/schema/util http://www.springframework.org/schema/util/spring-util.xsd">

        <!--

         构造函数注入 

      -->

      <bean id="school" class="cn.jbit.spring092601.domain.School">

          <constructor-arg>

              <value>lisi</value>

          </constructor-arg>

      </bean>

    </beans>

6.测试bean的属性注入

    在test目录下测试

    包名:cn.jbit.spring092601.domain

    /**

     * 构造函数注入

     */

    @Test

    public void testConstr(){

       

        BeanFactory beanFactory = new XmlBeanFactory(new ClassPathResource("applicationContext.xml"));

        School school = (School) beanFactory.getBean("school");

        System.out.println(school.getName());

    }

本文转自  素颜猪  51CTO博客,原文链接:http://blog.51cto.com/suyanzhu/1558485

转载地址:http://cuzfa.baihongyu.com/

你可能感兴趣的文章
Java 编码 UTF-8
查看>>
SpringMVC实战(注解)
查看>>
关于静态属性和静态函数
查看>>
进程的基本属性:进程ID、父进程ID、进程组ID、会话和控制终端
查看>>
spring+jotm+ibatis+mysql实现JTA分布式事务
查看>>
MyBatis启动:MapperStatement创建
查看>>
调查问卷相关
查看>>
eclipse启动无响应,老是加载不了revert resources,或停留在Loading workbench状态
查看>>
1. Git-2.12.0-64-bit .exe下载
查看>>
怎样关闭“粘滞键”?
查看>>
[转]React 教程
查看>>
拓扑排序介绍
查看>>
eclipse打开工作空间(workspace)没有任务反应
查看>>
使用Sybmol模块来构建神经网络
查看>>
字符串去分割符号
查看>>
WPF中,多key值绑定问题,一个key绑定一个界面上的对象
查看>>
UML类图简明教程
查看>>
java反编译工具(Java Decompiler)
查看>>
Android开发之自定义对话框
查看>>
微信Access Token 缓存方法
查看>>