Spring注入对象(3)

2019-03-08/10:45:04

演示:对Product对象,注入一个Category对象

1.创建pojo类 Product类中有对Category对象的setter getter

 1 package pojo;
 2
 3 public class Product {
 4
 5     private int id;
 6     private String name;
 7     private Category category;   //引入Category对象同时添加get和set
 8     public int getId() {
 9         return id;
10     }
11     public void setId(int id) {
12         this.id = id;
13     }
14     public String getName() {
15         return name;
16     }
17     public void setName(String name) {
18         this.name = name;
19     }
20     public Category getCategory() {
21         return category;
22     }
23     public void setCategory(Category category) {
24         this.category = category;
25     }
26 }

2.配置文件applicationContext.xml的修改     在创建Product的时候注入一个Category对象,这里要使用ref来注入另一个对象

 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" xmlns:aop="http://www.springframework.org/schema/aop"
 4     xmlns:tx="http://www.springframework.org/schema/tx" xmlns:context="http://www.springframework.org/schema/context"
 5     xsi:schemaLocation="
 6    http://www.springframework.org/schema/beans
 7    http://www.springframework.org/schema/beans/spring-beans-3.0.xsd
 8    http://www.springframework.org/schema/aop
 9    http://www.springframework.org/schema/aop/spring-aop-3.0.xsd
10    http://www.springframework.org/schema/tx
11    http://www.springframework.org/schema/tx/spring-tx-3.0.xsd
12    http://www.springframework.org/schema/context
13    http://www.springframework.org/schema/context/spring-context-3.0.xsd">
14
15     <bean name="c" class="pojo.Category">
16         <property name="name" value="category 1" />
17     </bean>
18     <bean name="p" class="pojo.Product">
19         <property name="name" value="product1" />
20         <property name="category" ref="c" />
21     </bean>
22
23 </beans>

3.TestSpring

通过Spring拿到的Product对象已经被注入了Category对象了

 1 package test;
 2
 3 import org.springframework.context.ApplicationContext;
 4 import org.springframework.context.support.ClassPathXmlApplicationContext;
 5
 6 import pojo.Product;
 7
 8 public class TestSpring {
 9
10     public static void main(String[] args) {
11         ApplicationContext context = new ClassPathXmlApplicationContext(new String[] { "applicationContext.xml" });
12
13         Product p = (Product) context.getBean("p");
14
15         System.out.println(p.getName());
16         System.out.println(p.getCategory().getName());
17     }
18 }

4.测试结果

原文地址:https://www.cnblogs.com/bencoper/p/10494474.html

时间: 2024-10-20 17:57:36

Spring注入对象(3)的相关文章

JSP 获取Spring 注入对象

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

spring注入对象类型的属性

一.1.创建service类和Dao类 (1)在service中得到dao对象 2.具体实现过程 (1)在service里边把dao作为类型属性 (2)生成dao类型属性的set方法 public class UserDao { public void add(){ System.out.println("dao--------------"); } } public class UserService { private UserDao userDao; public void se

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] 

1.JSON 转换对象失败问题 2.spring注入失效

今天做项目中将一个json 字符串转换为对象,但结果怎么都转换不了!——————最后发现问题,原来是因为这个类我给他添加了带参数的构造器!导致转换失败! 在添加一个无参的构造器就好了! 第二个:今天调试代码时发现spring注入总是失效!--------最后发现原来是因为我们new 一个新的线程,在新线程里面跑的!导致Spring  注入失败! 解决办法:http://blog.csdn.net/wuzongpo/article/details/7191467(就是重新创建一个Spring容器)

【Spring实战】注入非Spring Bean对象

大家经常用到Spring IOC去管理对象之间的依赖关系,但一般情况下都有一个前提:这些Bean对象必须是通过Spring容器创建实例化的. 但实际上,项目中有可能会遇到这样的场景: 一个类不是通过Spring容器实例化的,而是直接new Object()这种方式创建,这个对象又和别的Spring容器中管理的对象存在依赖关系. 这时该怎么办呢,当然,我们可以手动的去调用setXxxx()方法去设置对象之间的依赖,但这样耦合性又太高.还好Spring也提供了注入非Spring Bean对象的功能.

Java框架spring Boot学习笔记(九):注入对象类型属性

使用set方法注入对象属性 编写UserDao.java文件 1 package com.example.spring; 2 3 public class UserDao { 4 public void print(){ 5 System.out.println("Dao print."); 6 } 7 } 编写UserService.java文件 1 package com.example.spring; 2 3 public class UserService { 4 //1.定义

Spring根据XML配置文件注入对象类型属性

这里有dao.service和Servlet三个地方 通过配过文件xml生成对象,并注入对象类型的属性,降低耦合 dao文件代码: package com.swift; public class DaoUser { public void fun() { System.out.println("I'm dao's fun()...................."); } } service文件代码:(提供setter方法,xml文件可通过这种方法配置) package com.sw

Spring.NET依赖注入框架学习--注入对象常见方法

Spring.NET依赖注入框架学习---实例化容器常用方法 本篇学习实例化Spring.NET容器的俩种方式 1.通过XmlObjectFactory创建一个Spring.NET容器 IResource input = new FileSystemResource ("objects.xml"); IObjectFactory factory = new XmlObjectFactory(input); 这样就可以通过factory的GetObject(“objectName”);获

【初识Spring】对象(Bean)实例化及属性注入(xml方式)

title: [初识Spring]对象(Bean)实例化及属性注入(xml方式) date: 2018-08-29 17:35:15 tags: [Java,Web,Spring] --- ?#初识Spring之Bean实例化及属性注入 1.通过xml配置的方式进行实例化. 配置文件中bean标签的常用属性 通过无参构造(常用) 使用静态工厂进行创建 使用实例工厂进行创建 2.属性注入. 使用有参数构造方法注入属性 使用set方法注入属性(常用) 注入对象类型属性 注入复杂类型属性 xml配置的