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 setUserDao(UserDao userDao) {
        this.userDao = userDao;
    }
    public void add(){
        System.out.println("service--------------");
        userDao.add();
    }
}

3.xml配置:

<bean id="userService" class="com.example.propetys.UserService">
<!-- name的值是 UserService类属性的值  ref是UserDao配置的ID的值-->
<property name="userDao" ref="userDao"></property>
</bean>
<bean id="userDao" class="com.example.propetys.UserDao"></bean>

二:P名称空间注入

1.建一个类:

public class Person {
    private String pname;

    public void setPname(String pname) {
        this.pname = pname;
    }
    public void test(){
        System.out.println("asdhjcbsdj"+pname);
    }
}

2.xml文件<beans>下

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

<bean id="person" class="com.example.propetys.Person" p:pname="lucy"></bean>

三.注入复杂类型属性

1.数组

2.list集合

3.map集合

4.properties类型

(1)建一个类

import java.util.List;
import java.util.Map;
import java.util.Properties;

public class Person {
    private String pname;

    public void setPname(String pname) {
        this.pname = pname;
    }
    private String[] arrs;
    private List<String> list;
    private Map<String, String> map;
    private Properties properties;

    public void setArrs(String[] arrs) {
        this.arrs = arrs;
    }
    public void setList(List<String> list) {
        this.list = list;
    }
    public void setMap(Map<String, String> map) {
        this.map = map;
    }
    public void setProperties(Properties properties) {
        this.properties = properties;
    }
    public void test(){
        System.out.println("arrs:"+arrs);
        System.out.println("list:"+list);
        System.out.println("map:"+map);
        System.out.println("properties:"+properties);
    }
}

(2)配置xml文件

<bean id="person" class="com.example.propetys.Person" >
<!-- 数组 -->
     <property name="arrs">
         <list>
            <value>数学</value>
            <value>语文</value>
            <value>历史</value>
            <value>英语</value>
         </list>
     </property>
<!-- list -->
      <property name="list">
         <list>
             <value>c/c++</value>
             <value>java</value>
         </list>
      </property>
<!-- map -->
      <property name="map">
        <map>
           <entry key="a" value="图书馆"></entry>
           <entry key="b" value="教学楼"></entry>
           <entry key="c" value="宿舍"></entry>
        </map>
      </property>
<!-- properties -->
     <property name="properties">
     <props>
       <prop key="driverclass">com.mysql.jdbc.Driver</prop>
       <prop key="username">root</prop>
     </props>
     </property>
</bean>

原文地址:https://www.cnblogs.com/xxdebug/p/8682553.html

时间: 2024-10-25 05:15:58

spring注入对象类型的属性的相关文章

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

JSP 获取Spring 注入对象

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

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 注入集合类型

定义了一个类: Java代码   @Service public class StringTest implements CachedRowSet,SortedSet<String>,Cloneable Java代码   @Controller public class HomeController { @Autowired CachedRowSet message; @Autowired CachedRowSet message1; } 这里CachedRowSet , 等其他接口都是可以注

spring 注入java.util.Properties 属性两种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" xmlns:util="http://www.springframework.org/schema/util

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 g

spring 注入集合类型 List、Set、Map

首先先看用到的类: Class1,Class2 代码: package my.spring.fuck; public class Class1 implements Interface1{ private String a; public String getA() { return a; } public void setA(String a) { this.a = a; } public void eat(String s){ System.out.println(s+a); } } pac

【初识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配置的

17_8_9 Spring 注入

1 Spring 的 Bean 的属性注入: 构造方法的方式注入属性: <!-- 第一种:构造方法的方式 --> <bean id="car" class="cn.itcast.spring.demo4.Car"> <constructor-arg name="name" value="保时捷"/> <constructor-arg name="price" val