spring注入成员对象

就是将对象注入到另外一个对象中。这个例子就是有一个学校类,学校类中有一个校长类,最后使用测试文件输出学校类中的信息。

代码结构

学校类

package com.test.SpringGetSet;

public class School {
	private Present present;

	public Present getPresent() {
		return present;
	}

	public void setPresent(Present present) {
		this.present = present;
	}

	public String getShoolName() {
		return shoolName;
	}

	public void setShoolName(String shoolName) {
		this.shoolName = shoolName;
	}

	String shoolName;

	public void say()
	{
		System.out.println("校名:"+shoolName);
		System.out.println("校长姓名:"+present.getName());
	}

}

校长类

package com.test.SpringGetSet;

public class Present {
	private String name;
	public String getName() {
		return name;
	}
	public void setName(String name) {
		this.name = name;
	}
	public int getAge() {
		return age;
	}
	public void setAge(int age) {
		this.age = age;
	}
	private int age;

}

beans.xml

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN" "http://www.springframework.org/dtd/spring-beans.dtd">
<beans>
    <bean id="present" class="com.test.SpringGetSet.Present">
        <property name="name" value="杨发癫" />
        <property name="age" value="40" />
    </bean>
    <bean id="school" class="com.test.SpringGetSet.School">
        <property name="shoolName" value="上饶县中" />
        <property name="present">
            <ref bean="present"/>
        </property>
    </bean>
</beans>

测试类

package com.test.SpringGetSet;

import org.springframework.beans.factory.BeanFactory;
import org.springframework.beans.factory.xml.XmlBeanFactory;
import org.springframework.core.io.ClassPathResource;

import SpringByHand.Hello;

public class SetDemo001 {

	/**
	 * @param args
	 */
	public static void main(String[] args) {
		// TODO Auto-generated method stub
		BeanFactory factory=new XmlBeanFactory(new ClassPathResource("com/test/SpringGetSet/beans.xml"));
		School s=(School) factory.getBean("school");
		s.say();
	}

}

输出结果

时间: 2024-10-12 20:57:13

spring注入成员对象的相关文章

SSH框架系列:Spring读取配置文件以及获取Spring注入的Bean

分类: [java]2013-12-09 16:29 1020人阅读 评论(0) 收藏 举报 1.简介 在SSH框架下,假设我们将配置文件放在项目的src/datasource.properties路径下,Spring的配置文件也是src/applicationContext.xml路径下,那么我们可以借助Spring的property-placeholder读取配置文件,然后注入Bean中.我们在程序中,可以根据Bean的Id,获取注入的值.这样我们就可以借助Spring来读取配置文件. 2.

JSP 获取Spring 注入对象

<%@ page import="org.springframework.web.context.support.WebApplicationContextUtils"%> <%@ page import="org.springframework.context.ApplicationContext"%> ServletContext sc = this.getServletConfig().getServletContext(); Appl

Spring注入aspectJ切面

1.用关键字aspect即可声明一个切面如:                    切面定义完毕,可以发现,pointcut被当做一个类型,指定切点还是用execution表达式:after()和returning()也被当做一个类型来声明一个通知 2.在JudgeAspect中有一个CriticismEngine类型的成员变量,为了实现对象间的松耦合,我们在aspectJ中使用Spring的依赖注入来为JudgeAspect注入CriticismEngine对象.首先将CriticismEng

spring注入与代理对象两个对象

[INFO ] 2015-05-18 15:44:37:124 [com.yjm.dao.CommonDAO] - CommonDAO...初始化... [INFO ] 2015-05-18 15:44:37:137 [com.yjm.service.FoodService] - FoodService...初始化...18794463 [email protected] [INFO ] 2015-05-18 15:44:37:336 [com.yjm.service.FoodService] 

Spring注入之注解

繁琐的xml配置有时候让人感到烦躁,而Spring支持的注解配置简化了bean的配置. 所以spring可以使用annotation进行主动注入以及自动检测bean. <!--启用注解 --> <context:annotation-config></context:annotation-config> <!-- 自动检测pojo类为spring中的bean+启用注解 ,有了这个就可以不用配置--> <context:component-scan ba

JSP中使用Spring注入的Bean时需要注意的地方

遇到问题 遇到一个问题:在JSP中,使用Spring注入的Bean对象时,未能正确地获取到想要的对象. 郁闷的是,它也没报错. 研究问题 使用DEBUG功能(好久不在JSP里写Java代码了,都忘了JSP也可以打断点调试),跟踪了一下代码,发现确实有了我想使用的类的实例,不过是个代理类. 想到反射.代理相关的知识,貌似知道问题在哪了. 赶紧试了一下,果然…… 解决 在JSP里你要获得的Bean对象的类型,要定义成接口类,而不是实现类. 当然,这也视情况而定,我不确定,在JSP里使用Spring注

Spring注入:配置与注解

之前在某电商公司的时候也接触过一点Spring,不过了解不深,只是大概知道这个东西的存在.现在在一家公司实习的时候,才系统的看了一下Spring,这个框架网上的解释都很多,但主要都会介绍一下关于spring注入这一点,其实spring还有拦截的功能,而spring本身又是可以通过注解来使用,也可以通过配置文件使用,比较复杂,这里粗略介绍spring的注入层面,后面也许会写一篇关于spring MVC的博客.同时本文也会附上本人在自学过程中的一些好资料~~ 注入简介 Spring注入可以理解为是对

Quartz入门实例14-让Quartz的Job使用Spring注入的Bean

<!-- 由spring生成scheduler --> <bean id="scheduler" class="org.springframework.scheduling.quartz.SchedulerFactoryBean"> <!--<property name="jobFactory"> <bean class="cn.zto.job.JobBeanJobFactory"

spring 注入 和 实例化的差别(别说没区别)

1. 依赖注入(Dependency Injection)和控制反转(Inversion of Control)是同一个概念.具体含义是:当某个角色(可能是一个Java实例,调用者)需要另一个角色(另一个Java实例,被调用者)的协助时,在传统的程序设计过程中,通常由调用者来创建被调用者的实例.但在Spring里,创建被调用者的工作不再由调用者来完成,因此称为控制反转;创建被调用者实例的工作通常由Spring容器来完成,然后注入调用者,因此也称为依赖注入. 不管是依赖注入,还是控制反转,都说明S