- 浏览: 887274 次
- 性别:
- 来自: 北京
文章分类
- 全部博客 (687)
- java (127)
- servlet (38)
- struts (16)
- spring (22)
- hibernate (40)
- javascript (58)
- jquery (18)
- tomcat (51)
- 设计模式 (6)
- EJB (13)
- jsp (3)
- oracle (29)
- RUP (2)
- ajax (3)
- java内存管理 (4)
- java线程 (12)
- socket (13)
- path (5)
- XML (10)
- swing (2)
- UML (1)
- JBPM (2)
- 开发笔记 (45)
- Note参考 (15)
- JAXB (4)
- Quartz (2)
- 乱码 (2)
- CSS (2)
- Exception (4)
- Tools (7)
- sqlserver (3)
- DWR (7)
- Struts2 (47)
- WebService (2)
- 问题解决收藏 (7)
- JBOSS (7)
- cache (10)
- easyUI (19)
- jQuery Plugin (11)
- FreeMarker (6)
- Eclipse (2)
- Compass (2)
- JPA (1)
- WebLogic (1)
- powerdesigner (1)
- mybatis (1)
最新评论
-
bugyun:
受教了,谢谢
java 正则表达式 过滤html标签 -
xiongxingxing_123:
学习了,感谢了
java 正则表达式 过滤html标签 -
wanmeinange:
那如果无状态的。对同一个任务并发控制怎么做?比如继承Quart ...
quartz中参数misfireThreshold的详解 -
fanjieshanghai:
...
XPath 元素及属性查找 -
tianhandigeng:
还是没明白
quartz中参数misfireThreshold的详解
最近项目中也配了几遍ssh框架了,不过老出问题,还是Spring学的不到家,还好有黎活明老师的视频,决定有些地方再看一遍,复习一下,经典的东西,每看一遍都会有收获的。今天主要看了依赖注入
1 基本类型对象注入有两种方式:1,通过构造器传递参数注入,2通过属性的setter方法注入。视频中举例:
<bean id="personService" class="cn.itcast.service.PersonServiceBean">
<constructor-arg index=“0” type=“java.lang.String” value=“xxx”/>//构造器注入
<property name=“name” value=“zhao/>//属性setter方法注入
</bean>
2 注入其他bean,方式一,在<property>中使用ref与其他bean对应
<bean id="personDao" class="cn.itcast.service.PersonDaoBean"/>
<bean id="personService" class="cn.itcast.service.PersonServiceBean">
<property name="personDao" ref="personDao"/>
</bean>
<property>元素中name属性为bean中的属性名称,ref为要注入的bean中的id值
personService实例化时 通过ref=“personDao”得到PersonDaoBean的实例,然后赋给name=“personDao” 的属性。
方式二(使用内部bean,但该bean不能被其他bean使用)
<bean id="personService" class="cn.itcast.service.PersonServiceBean">
<property name="personDao">
<bean class="cn.itcast.service.PersonDaoBean"/>
</property>
</bean>
3
依赖注入的方式
使用属性setter方法注入
使用构造器注入
使用Field注入(注解方式)
注入依赖对象可以采用手工装配或自动装配,在实际应用中建议使用手工装配,因为自动装配会产生未知情况,开发人员无法预见最终的装配结果。
1.手工装配依赖对象
2.自动装配依赖对象
手工装配依赖对象,在这种方式中又有两种编程方式
1. 在xml配置文件中,通过在bean节点下配置,如
<bean id="personService" class="cn.itcast.service.PersonServiceBean">
<constructor-arg index=“0” type=“java.lang.String” value=“xxx”/>//构造器注入
<property name=“name” value=“zhao/>//属性setter方法注入
</bean>
2. 在java代码中使用@Autowired或@Resource注解方式进行装配。但我们需要在xml配置文件中配置以下信息:
<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"
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-2.5.xsd
http://www.springframework.org/schema/context
http://www.springframework.org/schema/context/spring-context-2.5.xsd">
<context:annotation-config/>
</beans>
这个配置隐式注册了多个对注解进行解析处理的处理,使用注解时一定要加上他。器:AutowiredAnnotationBeanPostProcessor,CommonAnnotationBeanPostProcessor,PersistenceAnnotationBeanPostProcessor,RequiredAnnotationBeanPostProcessor
注: @Resource注解在spring安装目录的lib\j2ee\common-annotations.jar
不推荐使用@Autowired进行自动装配,以黎老师的经验,会出一些很难理解的问题
<script></script>
发表评论
-
spring 2.5 注释驱动的 IoC 功能
2012-06-15 23:35 931概述 注释配置相对于 XML 配置具有很多的优势: 它可 ... -
在Spring BeanFactory容器中管理两种bean
2012-06-08 22:45 3007在Spring BeanFactory容器 ... -
Spring-security 1
2011-05-15 20:20 1663有没有发现一个问题 ... -
容器背后的秘密
2011-04-28 00:26 905核心提示:4.4 容器背 ... -
spring 监听器 IntrospectorCleanupListener简介
2011-04-27 15:49 1272其中JavaBeans Introspector是一个类,位置 ... -
通过ApplicationContextAware获取bean
2011-04-25 17:30 1653通过ApplicationContextAware获取bean ... -
详解 Spring 3.0 基于 Annotation 的依赖注入实现
2011-03-14 17:18 1086简介: Spring 的依赖配置方式与 Spring 框架的内 ... -
spring+hibernate操控LOB对象
2011-03-12 00:27 970spring为hibernate提供了对LOB对像的支持, ... -
Spring AOP
2011-03-11 10:32 854AOP是Aspect Oriented Programming ... -
Spring AOP配置选项
2011-03-11 08:59 1588Spring实现动态代理配置是有两种配置文件:1、 xml ... -
spring 事务传播属性和隔离级别
2011-02-13 14:53 1065一、Propagation (事务的 ... -
spring学习,实例化bean的方式及Bean的作用域
2010-10-26 10:09 1153今天继续学习Spring,黎老师对Spring中比较重要的部分 ... -
IOC控制反转和DI依赖注入区别
2010-10-12 15:20 1174IOC控制反转:说的是创建对象实例的控制权从代码控制剥离到IO ... -
Quartz cron表达式详解
2010-09-27 15:13 946字段 允许 ... -
Spring Bean的作用域
2010-09-27 15:12 935XML代码 <bean id="role ... -
spring配置中调用properties文件
2010-09-27 14:59 1562system.propertiesdatabase.url=j ... -
DataSourceUtils.getConnection()要与其对称方法配合使用
2010-09-15 16:56 1374DataSourceUtils.getConnection() ... -
使用BeanNameAutoProxyCreator实现spring的自动代理
2010-09-06 15:05 1014提到代理,我们可以使用ProxyBeanFactory,并配置 ... -
Spring源代码解析(一):IOC容器
2010-08-17 13:33 806在认真学习Rod.Johnson的三部曲之一:< < ... -
Spring源代码分析之(二):IOC容器在web容器中的启动[转]
2010-08-17 13:32 974以下引用自博客:http://jiwenke-spring.b ...
相关推荐
在Spring框架中,XML配置文件是核心组成部分,它定义了bean的实例化、依赖注入以及其他的框架设置。本文将深入探讨如何模拟Spring的XML配置文件注入,并通过SAXBuilder解析XML文件来实现这一过程。 首先,理解XML...
一旦XML配置加载到Spring容器中,容器将根据配置创建Bean实例,并按照定义进行初始化、依赖注入,最后完成Bean的生命周期管理。 10. **实践操作**: 在实际开发中,我们可以使用Eclipse的Spring插件来简化Bean...
Spring的依赖注入提供了XML、注解和Java配置等多种方式,满足不同场景的需求。自动配置是Spring Boot的一大特色,极大地简化了微服务的开发。理解并熟练掌握这些方式,对于提升Spring应用的开发效率和质量至关重要。...
在本教程中,我们将深入探讨如何通过XML配置在Spring IOC容器中实现依赖注入。 首先,我们需要了解Spring的IOC容器。IOC容器是Spring的核心,它负责管理对象的生命周期和对象间的依赖关系。容器通过读取XML配置文件...
此外,Spring还支持基于注解的依赖注入,使用`@Autowired`、`@Qualifier`等注解可以简化配置,让代码更简洁。例如: ```java @Service public class UserService { @Autowired private UserDao userDao; } ``` ...
通过@Autowired注解或XML配置,Spring可以自动装配bean,实现依赖注入。同时,Spring还提供了AOP(面向切面编程)支持,用于添加如日志、事务管理等横切关注点。 在整合SSH的过程中,Spring可以作为粘合剂,将...
XML解析则是实现依赖注入的一种常见方式,尤其是在Spring框架中广泛使用。本篇文章将深入探讨如何利用XML解析来完成依赖注入,并结合源码`xmlparse_Ioc`进行详细解释。 首先,我们要理解什么是依赖注入。依赖注入的...
Spring依赖注入是Spring框架的核心特性之一,它使得对象之间的依赖关系得以解耦,增强了代码的可测试性和可维护性。依赖注入(Dependency Injection,简称DI)的理念是,一个对象不应该负责寻找并创建它所依赖的对象...
**Spring 框架中的控制反转 (IoC) 和依赖注入 (DI)** 在软件开发中,控制反转(Inversion of Control,简称IoC)是一种设计原则,它将对象的创建和管理权从代码中剥离出来,转交给一个外部容器(如Spring框架)。...
Spring依赖注入是Spring框架的核心特性之一,它极大地简化了Java应用程序的开发,使得对象之间的依赖关系得以解耦,提高了代码的可测试性和可维护性。本文将深入探讨Spring依赖注入的底层实现机制。 首先,我们要...
总结来说,这个"Spring与IoC系列三:基于XML的依赖注入测试程序di.rar"涵盖了Spring框架的核心特性——依赖注入,通过XML配置文件管理对象间的依赖关系,是学习和实践Spring框架不可或缺的一部分。通过学习和操作这...
Spring依赖注入(Dependency Injection,简称DI)是Java应用开发中常用的设计模式,它极大地提高了代码的可测试性和可维护性。在Spring框架中,依赖注入是核心特性之一,通过控制反转(Inversion of Control,IoC)...
总的来说,Spring的泛型依赖注入是其IOC功能的一个强大扩展,它增强了代码的灵活性,提供了类型安全的依赖注入,简化了多态服务的配置,使得大型项目中的依赖管理变得更加优雅和高效。通过深入理解和实践这一特性,...
本篇学习笔记将深入剖析Spring依赖注入的原理,通过源码分析帮助我们理解这一核心机制。 首先,依赖注入允许我们解耦组件之间的关系,使得各个组件可以独立地进行开发、测试和维护。在Spring中,DI主要通过两种方式...
2. **依赖注入**:Spring框架根据applicationContext.xml配置,提供所需的Hibernate服务实例给Struts 2 Action。 3. **数据库操作**:Action中的方法通过注解配置的Hibernate实体进行数据库查询,Hibernate自动将...
在传统的程序设计中,我们通常手动创建对象并管理它们之间的依赖关系,而在Spring中,这些任务由IOC容器来处理,实现了从依赖管理到依赖注入的转变。 控制反转(IOC)意味着应用程序不再直接创建对象,而是将对象的...
2. **依赖注入**:Spring通过XML配置或者注解方式实现依赖注入。例如,可以在Action类中声明SessionFactory的setter方法,Spring会自动将SessionFactory实例注入到Action中。 ```java public class MyAction { ...
Spring框架是Java开发中广泛应用的轻量级框架,它提供了丰富的功能,如依赖注入(DI)、面向切面编程(AOP)以及各种模块支持。在本实例中,我们将深入探讨如何使用XML和注解结合的方式来配置Spring框架。首先,我们...