spring 管理bean

目录结构:

Person.java

 1 package com.wss.entity;
 2
 3 import com.wss.service.doHomeWork;
 4
 5 public class Person {
 6
 7     private String name;
 8     private int age;
 9     private doHomeWork dohomework;
10
11     public void setDoHomeWork(doHomeWork dohomework) {
12         this.dohomework = dohomework;
13     }
14     public doHomeWork getDoHomeWork() {
15         return this.dohomework;
16     }
17     public String getName() {
18         return name;
19     }
20     public void setName(String name) {
21         this.name = name;
22     }
23     public int getAge() {
24         return age;
25     }
26     public void setAge(int age) {
27         this.age = age;
28     }
29     @Override
30     public String toString() {
31         return "Person [name=" + name + ", age=" + age + ", dohomework=" + dohomework + "]";
32     }
33 }

别说话,点我

doHomeWork.java

1 package com.wss.service;
2
3 public class doHomeWork {
4
5     public String write() {
6         return new String("write");
7     }
8 }

别说话,点我

PersonTest.java

 1 package com.wss.test;
 2
 3 import org.junit.Test;
 4 import org.springframework.context.ApplicationContext;
 5 import org.springframework.context.support.ClassPathXmlApplicationContext;
 6
 7 import com.wss.entity.Person;
 8
 9 public class PersonTest {
10
11     @Test
12     public void test1() {
13         ApplicationContext context = new ClassPathXmlApplicationContext("spring-config.xml");
14         Person person = context.getBean("person", Person.class);
15         System.out.println(person.toString());
16         System.out.println(person.getDoHomeWork().write());
17     }
18 }

别说话,点我

spring-config.xml

 1 <?xml version="1.0" encoding="UTF-8"?>
 2 <beans xmlns="http://www.springframework.org/schema/beans"
 3        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
 4        xsi:schemaLocation="http://www.springframework.org/schema/beans
 5                            http://www.springframework.org/schema/beans/spring-beans.xsd">
 6     <!-- 配置person实例,其实现类是Person -->
 7     <bean id="person" class="com.wss.entity.Person">
 8         <property name="name" value="wss"></property>
 9         <property name="age" value="24"></property>
10         <!-- 驱动调用person的setDoHomeWork()方法,将容器中的stoneAxe作为参数传入 -->
11         <property name="doHomeWork" ref="dohomework"></property>
12     </bean>
13     <!-- 配置dohomework实例,其实现类是doHomeWork -->
14     <bean id="dohomework" class="com.wss.service.doHomeWork"></bean>
15 </beans>

别说话,点我

运行结果:

两种注入方式:

原文地址:https://www.cnblogs.com/natian-ws/p/10171323.html

时间: 2024-08-03 06:20:16

spring 管理bean的相关文章

采用Spring管理Bean和依赖注入

1.实例化spring容器 和 从容器获取Bean目标 实例化Spring容器常用的两种办法: 办法一: 在类途径下寻觅配置文件来实例化容器 [引荐运用] ApplicationContext ctx = new ClassPathXmlApplicationContext(new String[]{"beans.xml"}); 办法二: 在文件体系途径下寻觅配置文件来实例化容器 [这种办法能够在开发期间运用] ApplicationContext ctx = new FileSyst

深入探索spring技术内幕(二): 剖析spring管理Bean的原理与配置

求二叉树的宽度和深度 给定一个二叉树,获取该二叉树的宽度和深度. 例如输入 a / \ b c / \ / \ d e f g 返回3. 详细描述: 接口说明 原型: int GetBiNodeInfo(BiNode &head, unsigned int *pulWidth, unsigned int *pulHeight) 输入参数: head 需要获取深度的二叉树头结点 输出参数(指针指向的内存区域保证有效): pulWidth 宽度 pulHeight 高度 返回值: 0 成功 1 失败

反射-Spring管理Bean,注入Bean属性的反射机制。

#反射 1.是JAVA API,是Java提供的现成的类!! --接受API提供的功能! 2. 是Java提供的动态执行机制,动态加载类,动态创建对象,动态访问属性,动态调用方法. ##反射用途 1. eclipse 中解析类的结构使用了反射 2.JUnit识别被测试方法使用了反射 -- JUnit3 利用了反射查找test开头的方法 -- JUnit4 利用了反射解析@Test查找测试方法 3.Spring 管理Bean对象,注入Bean属性使用了反射 --利用反射创建Bean对象实例 --利

编码剖析Spring管理Bean的原理

在Spring的第一个案例中,我们已经知道了怎么将bean交给Spring容器进行管理,并且明白了怎么从Spring容器中获取bean.那我们就有一个疑问了:Spring是如何创建并管理bean的呢?现在我们就来编码剖析Spring管理Bean的原理. 本文是在Spring的第一个案例的基础上展开的. 我们要使用dom4j读取Sping的配置文件--beans.xml <?xml version="1.0" encoding="UTF-8"?> <

获取Spring管理bean对象

package com.sinosoft.base.util; import org.springframework.beans.BeansException; import org.springframework.beans.factory.NoSuchBeanDefinitionException; import org.springframework.context.ApplicationContext; import org.springframework.context.Applica

Spring——管理Bean的生命周期

我们可以自定义bean的初始化和销毁方法,这里所指的的初始化和bean的构造不同,初始化是在bean构造完成后,对bean内部的属性或一些逻辑进行初始化. 首先要弄清一些概念: 构造(对象创建) 单实例:在容器启动时创建对象 多实例:在每次获取的时候创建对象 初始化:在对象创建后调用 销毁: 单实例:在容器关闭时执行销毁方法 多实例:容器不会管理,不会调用销毁方法 下面提供几种方法供参考 一.指定初始化和销毁方法 在配置类中,我们可以通过@Bean指定initMethod 和destroyMet

Spring的Bean管理(注解管理)

Spring注解的IOC入门步骤: 步骤一:下载spring的开发包 http://repo.spring.io/webapp/search/artifact/?0&q=spring-framework 解压:(Spring目录结构:) * docs:API和开发规范. * libs:jar包和源码. * schema:约束. 步骤二:创建Web项目,引入spring开发jar包 核心jar包四个:bean/Core/Context/Expression Language 两个开发包 : log

Spring中管理Bean以及解析XML

Spring是分层的轻量级框架 以IoC(Inverse of Control 反转控制)和AOP(Aspect Oriented Programming 面向切面编程)为核心 应用Spring的好处: 方便解耦,简化开发 Spring就是一个大工厂,可以将所有对象创建和依赖关系维护,交给Spring管理 AOP编程的支持 Spring提供面向切面编程,可以方便的实现对程序进行权限拦截.运行监控等功能 声明式事务的支持 只需要通过配置就可以完成对事务的管理,而无需手动编程 方便集成各种优秀框架

Spring是如何管理Bean

容器是什么?spring中是如何体现的?一直有疑惑,这两天看了一下Spring管理bean的Demo,对于Spring中的容器有了简单的认识. 我们知道,容器是一个空间的概念,一般理解为可盛放物体的地方.在Spring容器通常理解为BeanFactory或者ApplicationContext.我们知道spring的IOC容器能够帮我们创建对象,对象交给spring管理之后我们就不用手动去new对象. 其中有BeanFactory与ApplicationContext两种方式可以创建对象. 那么