- 浏览: 1060229 次
- 性别:
- 来自: 南京
文章分类
- 全部博客 (501)
- dwr (6)
- javascript (84)
- oracle (66)
- jsp/servlet (18)
- ant (3)
- 基础知识 (12)
- EXT (10)
- My SQL (10)
- java (71)
- spring (37)
- 学习的对象 (2)
- Linux (24)
- 面试 (1)
- HTML/CSS (11)
- tomcat (11)
- 收藏夹 (2)
- Power Designer (2)
- struts.xml配置文件 (1)
- sturts2 (3)
- myeclipse (8)
- eclipse (7)
- Maven (34)
- SVN (3)
- SAP JCO (2)
- JBOSS (11)
- webservice (8)
- word (1)
- 敏捷开发 (1)
- sybase (4)
- Nexus (3)
- EhCache (3)
- log4j (3)
- Cookie (4)
- Session (4)
- CXF (7)
- AXIS (2)
- SSO (1)
- LDAP (1)
- velocity (2)
- Jquery (5)
- redis (2)
- http (4)
- dojo (1)
- Linux资源监控软件mnon的安装与运用 (1)
- notepad++ (1)
- EA (1)
- UML (1)
- JasperReports (1)
- 权限 (0)
- freemarker (4)
- Spring MVC (1)
- JMS (1)
- activeMQ (1)
- hession (3)
- 安全 (1)
- ibatis (2)
- log (1)
- nginx (1)
最新评论
-
winhbb:
我刚好遇到了一个问题(在可以依赖注入的场合有效):有两个模块A ...
解决Maven项目相互依赖/循环依赖/双向依赖的问题 -
nanjiwubing123:
long3ok 写道你好 XmlOutputFormatter ...
用XStream转换复杂XML -
zhoujianboy:
另外一个方法实现eclipse tomcat 热部署:http ...
eclipse下实现maven项目在tomcat容器热部署方法 -
long3ok:
你好 XmlOutputFormatter 请问这个类是在什么 ...
用XStream转换复杂XML -
ganbo:
总结的好,文章给力。
解决Maven项目相互依赖/循环依赖/双向依赖的问题
在spring容器中配置bean,常用到的元素除了<value>和<ref>外,还有<props>、<list>、<set>、<map>,在hibernate等框架的配置文件中我们经常可以见到这些元素,下面是他们的具体用法。
1.<props>元素
<props>创建了一个注入的java.util.Properties元素。例如每个人都有身高、体重等基本信息
配置方式:
2.<list>元素
<list>元素对应于java.util.ArrayList.例如每个人都有一些朋友
配置该person的朋友有小红、姚明和张三
3.<set>元素
<set>元素和<list>元素的用法一样,不同的是他注入的是java.util.Set元素。
4.<map>元素
<map>元素用来注入java.util.Map元素。
4、spring配置里map的value是list配法
4、<!-- 外部配置文件 -->
5、查找jndi的方式
6、Spring 在配置中使用*.properties
1.<props>元素
<props>创建了一个注入的java.util.Properties元素。例如每个人都有身高、体重等基本信息
1 import java.util.Properties; 2 3 public class Person { 4 private Properties basicInfo; 5 6 public void setBasicInfo(Properties basicInfo) { 7 this.basicInfo = basicInfo; 8 } 9 }
配置方式:
1 <bean id="person" class="Person"> 2 <property name="basicInfo"> 3 <props> 4 <!-- 身高 --> 5 <prop key="stature">1.75</prop> 6 <!-- 体重 --> 7 <prop key="avoirdupois">120</prop> 8 </props> 9 </property> 10 </bean>
2.<list>元素
<list>元素对应于java.util.ArrayList.例如每个人都有一些朋友
1 package org.hag.flex.model; 2 3 import java.util.List; 4 import java.util.Properties; 5 6 public class Person { 7 private Properties basicInfo; 8 private List friends; 9 10 public void setBasicInfo(Properties basicInfo) { 11 this.basicInfo = basicInfo; 12 } 13 14 public void setFriends(List friends) { 15 this.friends = friends; 16 } 17 } 18
配置该person的朋友有小红、姚明和张三
1 <bean id="yaoming" class="Person"> 2 <prop key="age">25</prop> 3 <prop key="stature">2.26</prop> 4 <prop key="avoirdupois">140</prop> 5 </bean> 6 <bean id="person" class="Person"> 7 <property name="basicInfo"> 8 <props> 9 <!-- 身高 --> 10 <prop key="stature">1.75</prop> 11 <!-- 体重 --> 12 <prop key="avoirdupois">120</prop> 13 </props> 14 </property> 15 <property name="firends"> 16 <list> 17 <value>xiaohong</value> 18 <ref local="yaoming"/> 19 <value>zhangsan</value> 20 </list> 21 </property> 22 </bean>
3.<set>元素
<set>元素和<list>元素的用法一样,不同的是他注入的是java.util.Set元素。
4.<map>元素
<map>元素用来注入java.util.Map元素。
1 <property name="score"> 2 <map> 3 <entry key="math" value="150"></entry> 4 <entry key="english" value="140"></entry> 5 <entry key="chinese" value="60"></entry> 6 </map> 7 </property>
4、spring配置里map的value是list配法
<map> <entry key="a"> <list> <ref bean="b"/> <ref bean="c"/> </list> </entry> <entry key="d"> <list> <ref bean="e"/> </list> </entry> </map>
4、<!-- 外部配置文件 -->
<!-- 加载jdbc属性文件 --> <bean id="propertyConfigurer" class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer"> <property name="locations"> <list> <value>classpath*:config.properties</value> </list> </property> </bean> <!-- 外部配置文件 --> <context:property-placeholder location="classpath*:application.properties" /> <!--定义全局连接命名变量 --> <util:properties id="posmqProperties" location="classpath:/jms/pos-mq-jndi.properties" />
5、查找jndi的方式
<bean id="jmsConnectionFactory" class="org.springframework.jndi.JndiObjectFactoryBean"> <property name="jndiName"> <value>java:comp/env/jms/name</value> </property> </bean>
<!-- MQ 连接工厂 --> <jee:jndi-lookup id="posMqConnectionFactory" jndi-name="jms/posmq" environment-ref="posmqProperties" /> <!--定义全局连接命名变量 --> <util:properties id="posmqProperties" location="classpath:/jms/pos-mq-jndi.properties" /> <!-- Jndi --> <bean id="jndiTemplate" class="org.springframework.jndi.JndiTemplate"> <property name="environment"> <props> <prop key="java.naming.factory.initial"> weblogic.jndi.WLInitialContextFactory </prop> <prop key="java.naming.provider.url"> t3://192.166.68.44:7001 </prop> <prop key="java.naming.factory.url.pkgs"> weblogic.jndi.factories </prop> </props> </property> </bean> <!-- jms sender --> <bean id="jmsConnectionFactory" class="org.springframework.jndi.JndiObjectFactoryBean"> <property name="jndiTemplate" ref="jndiTemplate" /> <property name="jndiName" value="ConnectionFactory" /> </bean> <bean id="jmsQueue" class="org.springframework.jndi.JndiObjectFactoryBean"> <property name="jndiTemplate" ref="jndiTemplate"></property> <property name="jndiName" value="Queue"></property> </bean> <!-- jms template --> <bean id="jmsTemplate" class="org.springframework.jms.core.JmsTemplate"> <property name="connectionFactory" ref="jmsConnectionFactory"></property> <property name="defaultDestination" ref="jmsQueue"></property> </bean>
6、Spring 在配置中使用*.properties
<?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:context="http://www.springframework.org/schema/context" xmlns:util="http://www.springframework.org/schema/util" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.0.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.0.xsd http://www.springframework.org/schema/util http://www.springframework.org/schema/util/spring-util-3.0.xsd"> <context:annotation-config/> <!-- picks up and registers AppConfig as a bean definition --> <context:component-scan base-package="com.web.spring.other" /> <bean class="com.web.spring.other.AppConfig"/> 访法一 <context:property-placeholder location="classpath:jdbc.properties" /> 方法二 <util:properties id="jdbcProperties" location="classpath:jdbc.properties"/> </beans>
实现一: package com.web.spring.other; import org.springframework.beans.factory.annotation.Value; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; import org.springframework.context.annotation.ImportResource; @Configuration @ImportResource("classpath*:spring/spring-properties.xml") public class AppConfig { private @Value("${jdbc.driverClassName}") String driverClassName; @Bean(initMethod = "init") public JDBCBean jdbc(){ JDBCBean jdbc=new JDBCBean(); jdbc.setDriverClassName(driverClassName); return jdbc; } } 实现二: package com.web.spring.other; import org.springframework.beans.factory.annotation.Value; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; @Configuration public class AppConfig { private @Value("#{jdbcProperties.driverClassName}") String driverClassName; //private @Value("#{jdbcProperties['jdbc.driverClassName']}") String driverClassName; @Bean(initMethod = "init") public JDBCBean jdbc(){ JDBCBean jdbc=new JDBCBean(); jdbc.setDriverClassName(driverClassName); return jdbc; } }
发表评论
-
Spring MVC 3.1新特性 生产者、消费者请求限定
2015-06-15 07:42 711参考地址: http://www.iteye.com/to ... -
CSRF TOKEN
2015-02-14 18:02 1142package com.uncle5.pubrub.web.c ... -
Spring MVC Controller单例陷阱
2014-06-27 08:51 674Spring MVC Controller默认是 ... -
[Spring] Hessian权限认证,加密前面
2014-03-06 09:52 1603Hessian的一些基本简介已经在上一节已经全部介绍了,上一节 ... -
FieldRetrievingFactoryBean 和 MethodInvokingFactoryBean
2014-01-09 18:36 1016spring提供了filed的值注入和method的返回值注入 ... -
Spring中ApplicationContext的事件机制(二 内定事件)
2014-01-09 11:08 12333在Spring中已经定义了五个标准事件,分别介绍如下: 1) ... -
当spring 容器初始化完成后执行某个方法 .
2014-01-08 17:40 1439在某些应用中,我们希望,当spring 容器将所有的bea ... -
spring学习之springMVC 返回类型选择 以及 SpringMVC中model,modelMap.request,session取值顺序
2013-09-12 10:43 1207spring mvc处理方法支持如下的返回方式:ModelA ... -
JSR-303
2013-09-12 00:22 928JSR-303 是JAVA EE 6 中的一项子规范,叫做Be ... -
EHCACHE分布式缓存
2013-09-06 17:26 1307从1.2版本开始,Ehcache可 ... -
springMVC+freemarker整合
2013-09-06 16:39 1426springMVC整合大家都比较熟悉了吧主要有以下几个步骤: ... -
Spring MVC 学习笔记 Viewresol和View
2013-09-06 15:34 922Spring MVC使用ViewResolver来根据cont ... -
Spring的PropertyPlaceholderConfigurer应用
2013-09-06 15:04 3209Spring 利用PropertyPlaceholderCon ... -
SpringSecurity3_Logout
2013-08-22 16:07 2577Logout¶•退出登录的链接 <a href=&quo ... -
spring的default-lazy-init参数 .
2013-04-23 20:08 979spring在启动的时候,会默认加载会默认加载整个对象实例图, ... -
Spring MVC 如何防止XSS、SQL注入攻击
2013-04-16 15:40 1678在Web项目中,通常需要处理XSS,SQL注入攻击,解决这个问 ... -
Spring JMS
2013-01-08 10:48 965http://blog.csdn.net/shiqiang12 ... -
给spring jdbctemplate加上一层“绮丽外衣”-动态SQL&&SQL语句以文件存放
2013-01-07 16:00 3301给spring jdbctemplate加上一层“华丽外衣”- ... -
使用Spring的NamedParameterJdbcTemplate完成DAO操作 .
2013-01-07 14:54 1177NamedParameterJdbcTemplate内部包含了 ... -
cron表达式(quartz中时间表达式)
2012-12-20 15:54 988http://sosuny.iteye.com/blog/46 ...
相关推荐
在XML配置中,我们可以使用`<list>`、`<set>`、`<map>`和`<props>`标签来定义不同的集合类型。例如,如果我们要注入一个包含多个bean的List,可以这样写: ```xml <list> <value>stringValue </list> ...
在Spring配置文件(如`beans.xml`)中,你可以使用`<list>`、`<set>`、`<map>`和`<props>`标签来声明这些集合。每个标签都有自己的特定用途: 1. `<list>`:用于创建ArrayList实例,其内部元素可以是其他Bean或简单...
针对不同类型集合,Spring提供了不同的XML元素,如<list/>、<set/>、<map/>以及<props/>。 #### 3.1 list元素注入 <list/>元素用于注入List类型的集合数据。例如: ```xml <list> 三国演义 水浒传 红楼梦 ...
- 集合类型(List、Set、Map、Properties):通过`<list/>`、`<set/>`、`<map/>`、`<props/>`元素注入。 7. 创建Bean实例的方法: - 通过构造器(有参或无参)。 - 通过静态工厂方法。 - 通过实例工厂方法。 8...
- **属性注入**:Spring会将依赖注入到Bean中,包括值注入(value,ref)和集合注入(list,map,props,set)。 - **初始化回调**:Spring支持两种类型的初始化回调方法,即`@PostConstruct`注解的方法和在XML中...
- **<list>/<map>/<set>/<props>`元素**:用于配置集合类型属性,如List、Map、Set和Properties。 #### 总结 Spring的`<beans>`和`<bean>`元素及其属性提供了强大的配置能力,使开发者能够灵活地定义、配置和管理...
在Spring的XML配置文件中,我们可以使用`<list>`、`<set>`、`<map>`和`<props>`标签来装配集合类型的属性。例如,假设我们有一个`User`类,它包含一个`List<User>`类型的`friends`属性: ```xml <list> ...
Spring提供了多种方式来配置这些集合,如`<list>`、`<set>`、`<map>`和`<props>`元素。例如,你可以这样配置一个包含多个bean的列表:`<list><ref bean="bean1"/><ref bean="bean2"/></list>`。 Properties属性处理...
集合依赖注入是指使用<list>、<set>、<map>、<props>配置与Java Collection类型对应List、Set、Map、Properties。例如:<property name="lists"> <list> <value></value> <ref/> </list> Bean的依赖模式 Bean的...
- **集合属性注入**:使用`<list>`, `<set>`, `<map>`, `<props>`等标签注入数组、集合、映射等数据结构。例如: ```xml <list> <value>value1 <value>value2 </list> ``` - **util scheme 定义集合**...
- **Map集合**:使用`<map>`元素注入键值对。 - **Properties类型**:使用`<props>`元素注入键值对。 通过以上知识点的学习,我们可以了解到Spring框架的基础概念以及如何使用Spring框架来管理和配置应用程序中的...
XML配置中,可以使用`<list>`、`<set>`、`<map>`或`<props>`标签来表示不同类型的集合。使用注解时,可以创建集合字段并让Spring自动填充它们。 **Bean的作用域**是Spring管理Bean生命周期的重要部分。Bean可以有...
6. **List与Set注入**:对于List或Set,可以使用`<list>`或`<set>`元素。例如,注入一个包含两个Bean的List: ```xml <list> </list> ``` 7. **Property注入**:对于复杂类型,如Properties,可以...
在这个主题下,我们将深入理解Spring如何管理容器中的集合类型,如List、Set、Map等。描述中提到的链接指向了一个特定的博客文章,虽然没有直接提供具体内容,但我们可以通过这个话题来展开广泛的讨论。 在Spring...
- **集合类型注入**:如List、Set、Map、Properties等,可以在XML配置中使用对应的标签(`<list>`、`<set>`、`<map>`、`<props>`)进行注入,提供多个值或引用其他Bean。 - **引用其他Bean**:通过`ref`属性,可以...
此外,对于集合类型的属性,如`list`、`set`、`map`和`props`,Spring提供了专门的配置元素来填充这些集合。 在切面配置方面,Spring提供了AOP(面向切面编程)支持,可以用来实现如日志记录、事务管理等功能。在...
在Spring的XML配置文件中,可以使用`<list>`, `<set>`, `<map>`和`<props>`元素来指定集合的元素。例如,要注入一个List,可以这样写: ```xml <list> <value>element1 <value>element2 </list> ``` ...
以上就是关于"springDay1"的学习内容,包括了Spring框架中构造参数、set方法、类对象属性的注入,以及数组、List、Map、Properties对象的依赖注入方式。这些知识点是理解并掌握Spring框架的基础,通过它们可以构建出...
- **集合**:可以使用`<list>`、`<set>`、`<map>`等元素注入集合类型的依赖。 - **Properties**:通过`<props>`元素注入Java的`Properties`对象。 #### 13. Bean的自动生成 Spring框架可以根据注解和其他配置信息...