`

Spring 属性注入(int ,String, List, Map, Set, String[])

    博客分类:
  • JAVA
阅读更多
1.JavaBean




import java.util.List;

import java.util.Map;

import java.util.Set;



public class Test {

    private int intValue;

    private String strValue;

    private List listValue;

    private Map mapValue;

    private Set<String> setValue;

    private String[] arrayValue;



    public int getIntValue() {

       return intValue;

    }



    public void setIntValue(int intValue) {

       this.intValue = intValue;

    }



    public String getStrValue() {

       return strValue;

    }



    public void setStrValue(String strValue) {

       this.strValue = strValue;

    }



    public List getListValue() {

       return listValue;

    }



    public void setListValue(List listValue) {

       this.listValue = listValue;

    }



    public Map getMapValue() {

       return mapValue;

    }



    public void setMapValue(Map mapValue) {

       this.mapValue = mapValue;

    }



    public Set getSetValue() {

       return setValue;

    }



    public void setSetValue(Set setValue) {

       this.setValue = setValue;

    }



    public String[] getArrayValue() {

       return arrayValue;

    }



    public void setArrayValue(String[] arrayValue) {

       this.arrayValue = arrayValue;

    }

}

2.Spring.xml

<?xml version="1.0" encoding="UTF-8"?>

<!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN 2.0//EN" "http://www.springframework.org/dtd/spring-beans-2.0.dtd">



<beans>



    <bean id="TestBean" class="Test">

       <!-- 注入int数据 -->

       <property name="intValue" value="11" />



       <!-- 注入String数据 -->

       <property name="strValue">

           <value>Tom</value>

       </property>



       <!-- 注入List数据 -->

       <property name="listValue">

           <list>

              <value>list1</value>

              <value>list2</value>

              <value>list3</value>

           </list>

       </property>



       <!-- 注入Set数据 -->

       <property name="setValue">

           <set>

              <value>set1</value>

              <value>set2</value>

              <value>set3</value>

              <value>set4</value>

           </set>

       </property>



       <!-- 注入数组数据 -->

       <property name="arrayValue">

           <list>

              <value>array1</value>

              <value>array2</value>

              <value>array3</value>

              <value>array4</value>

           </list>

       </property>





       <!-- 注入map数据 -->

       <property name="mapValue">

           <map>

              <entry key="k1" value="map1" />

              <entry key="k2" value="map2" />

              <entry key="k3" value="map3" />

              <entry key="k4" value="map4" />

           </map>

       </property>

    </bean>



</beans>


3.测试bean





import java.util.Iterator;

import java.util.List;

import java.util.Map;

import java.util.Set;

import java.util.Map.Entry;



import org.apache.xbean.spring.context.ClassPathXmlApplicationContext;

import org.springframework.beans.factory.BeanFactory;



public class TestSpringDI {



    private static BeanFactory factory;



    public static void main(String[] args) {

       factory = new ClassPathXmlApplicationContext(

              "conf/spring/applicationContext1Test.xml");

       testBeanDemo();



    }



    public static void testBeanDemo() {

       Test test = (Test) factory.getBean("TestBean");



       System.out.println("beanDemo.intValue=" + test.getIntValue());



       System.out.println("beanDemo.strValue=" + test.getStrValue());

       List listValue = test.getListValue();

       System.out.println("beanDemo.listValue=");

       if (listValue != null) {

           for (Iterator it = listValue.iterator(); it.hasNext();) {

              System.out.println((String) it.next());

           }

       }



       System.out.println("beanDemo.setValue=");

       Set setValue = test.getSetValue();

       if (setValue != null) {

           for (Iterator it = setValue.iterator(); it.hasNext();) {

              System.out.println(it.next());

           }

       }



       System.out.println("beanDemo.arrayValue=");

       String[] arrayValue = test.getArrayValue();

       if (arrayValue != null) {

           for (int i = 0; i < arrayValue.length; i++) {

              System.out.println(arrayValue[i]);

           }

       }



       System.out.println("beanDemo.mapValue=");

       Map mapValue = test.getMapValue();

       if (mapValue != null) {

           Set<Map.Entry> set = mapValue.entrySet();

           for (Iterator it = set.iterator(); it.hasNext();) {

              Map.Entry entry = (Entry) it.next();

              System.out.println(entry.getKey() + " = " + entry.getValue());

           }

       }

    }

}


4.输出结果


beanDemo.intValue=11
beanDemo.strValue=Tom
beanDemo.listValue=
list1
list2
list3
beanDemo.setValue=
set1
set2
set3
set4
beanDemo.arrayValue=
array1
array2
array3
array4
beanDemo.mapValue=
k1 = map1
k2 = map2
k3 = map3
k4 = map4
分享到:
评论

相关推荐

    第四章 Spring4 注入参数

    Spring4允许我们将基本数据类型(如int、String、boolean等)以及它们的包装类作为属性注入到Bean中。例如,我们可以在配置文件中使用`&lt;property&gt;`标签或者在Java配置类中使用`@Value`注解来指定值: ```xml 张三...

    Spring中属性注入详解

    在Spring框架中,属性注入(Property Injection)是一种重要的依赖注入方式,它允许我们在不通过构造函数的情况下设置对象的属性值。这种方式使得代码更加灵活,降低了组件之间的耦合度。本篇将详细介绍如何在Spring...

    Spring - -setter方式 向bean中注入各种类型的值

    4. **集合类型的注入**:对于List、Set、Map等集合类型,Spring可以批量注入多个值。在XML配置中,你可以使用`&lt;list&gt;`、`&lt;set&gt;`或`&lt;map&gt;`标签来定义这些集合,并提供多个子元素。在Java配置中,可以使用`@Autowired`...

    java面试宝典

    65、Set里的元素是不能重复的,那么用什么方法来区分重复与否呢? 是用==还是equals()? 它们有何区别 17 66、HashMap和Hashtable的区别 17 67、说出ArrayList,Vector, LinkedList的存储性能和特性 17 68、java中有几...

    Spring注入常用配置

    `&lt;bean id="ntdref" class="cn.sinojava.bean.NullTypeDemo"&gt;` 后面的`&lt;property name="nullString"&gt;&lt;null/&gt;&lt;/property&gt;`表明可以为bean的属性注入null值,这在处理可选参数或者某些特定场景下可能需要。...

    尚学堂Spring学习笔记

    例如,int、String、String[]、List、Map、Set等类型的属性都可以通过配置文件进行注入。 三、自定义属性编辑器 Spring默认不能注入Date类型的值,但是我们可以通过自定义属性编辑器来实现这一功能。步骤如下: 1...

    springmybatis

    public void setId(int id) { this.id = id; } public String getUserName() { return userName; } public void setUserName(String userName) { this.userName = userName; } public String getUserAge()...

    浅谈spring ioc的注入方式及注入不同的数据类型

    浅谈Spring IoC的注入方式及注入不同的数据类型 Spring IoC(Inversion of Control,控制反转)是一种软件设计模式,它可以将对象之间的依赖关系进行解耦,提高系统的灵活性和可维护性。在Spring框架中,IoC是其...

    Spring.zip

    2. **Spring注入集合和数组**:除了基本类型,Spring还支持注入集合类型,如List、Set、Map等,以及数组。这允许我们向Bean注入一组相关的对象,方便处理多对一或一对多的关系。例如,通过`&lt;list&gt;`、`&lt;set&gt;`、`&lt;map&gt;...

    Spring JdbcTemplate调用Oracle存储过程实现CRUD

    List&lt;Map&lt;String, Object&gt;&gt; result = jdbcTemplate.execute(new CallableStatementCallback&lt;List&lt;Map&lt;String, Object&gt;&gt;&gt;() { @Override public List&lt;Map&lt;String, Object&gt;&gt; doInCallableStatement...

    Spring原理模拟代码

    String methodName = "set" + name.substring(0, 1).toUpperCase() + name.substring(1); Method m = o.getClass().getMethod(methodName, beanObject.getClass().getInterfaces()[0]); m....

    spring jdbc示例代码

    List&lt;Map&lt;String, Object&gt;&gt; result = jdbcTemplate.queryForList("SELECT * FROM table_name WHERE column1 = ?", value1); for (Map&lt;String, Object&gt; row : result) { // 处理每一行数据 } ``` **更新数据**: ``...

    day39-Spring 18-Spring的JDBC模板:查询的操作

    public List&lt;User&gt; getUsersByAge(int age) { return jdbcTemplate.query("SELECT * FROM users WHERE age = ?", new UserRowMapper(), age); } static class UserRowMapper implements RowMapper&lt;User&gt; { @...

    spring mvc拦截器过滤json中的null值

    list.set(i, filterNullValues(list.get(i))); } } return obj; } } ``` 完成拦截器实现后,我们需要在Spring MVC配置中注册它。在`WebMvcConfigurer`的实现类中添加以下代码: ```java @Configuration @...

    Java代码实现依赖注入

    模仿Spring实现一种基于xml配置文件的依赖注入机制。文件中将实现3中注入,一是单值注入,包括int,float,double,char等,也...二是Java容器注入,包括List,Set,Map三种容器的注入,最后一种是java bean对象注入。

    java面试题,初中级java工程师面试题

    List、Set、Map的区别 * List 是一种有序的集合,元素可以重复,例如 ArrayList、LinkedList。 * Set 是一种无序的集合,元素不能重复,例如 HashSet、TreeSet。 * Map 是一种键值对集合,键唯一,例如 HashMap、...

    spring hibernate执行存储过程的例子

    public void callProcedureWithNamingParams(@Param("param1") String param1, @Param("param2") int param2) { Map&lt;String, Object&gt; params = new HashMap(); params.put("param1", param1); params.put("param2...

    Spring:JdbcTemplate使用指南

    Map&lt;String, Object&gt; params = new HashMap(); params.put("name", "%" + criteria.getName() + "%"); params.put("age", criteria.getMinAge()); return namedJdbcTemplate.query(sql, params, new ...

    jdbcTemplate

    public List&lt;User&gt; getUserLists(Map&lt;String, Object&gt; map) { return null; } @Override public Integer getUserCount(Map&lt;String, Object&gt; map) { String sql = "select count(1) from User where id=? ...

    spring+jdbc组合开发

    Map&lt;String, Object&gt; params = new HashMap(); params.put("name", user.getName()); // ... 其他参数 simpleJdbcInsert.executeAndReturnKey(params); } ``` 通过这种方式,Spring的`JdbcTemplate`和`...

Global site tag (gtag.js) - Google Analytics