- 浏览: 813318 次
- 性别:
- 来自: 西安
文章分类
- 全部博客 (307)
- struts (8)
- hibernate (3)
- spring (32)
- opensourceproject (12)
- javaScript (9)
- primeton EOS (2)
- journey of heart (10)
- Design pattern (6)
- ejb (17)
- point (37)
- Linux&Unix (22)
- ibatis (10)
- AJAX (6)
- DB (26)
- Protocol (6)
- chart (4)
- web server (11)
- webservice (7)
- integration (3)
- tuxedo (5)
- ext (4)
- android (1)
- c/c++ (12)
- JVM (1)
- paginationFrame (2)
- code (2)
- report (1)
- High-performance web (1)
- svn (1)
- JQuery (1)
- workDaily (2)
- cloud (16)
- Python (8)
- English (2)
- shell (5)
- googleCode (1)
- nio (1)
- hyper-v (1)
- debug (3)
- vbs (2)
- openstack (3)
- K8S (1)
- Mesos (0)
- Spark (0)
- Marathon (0)
最新评论
-
钱图大展:
chao2751021 写道lib包哪里去下载,找不到
大型网站用户行为记录的一个实现--基于clickStream(第一部分) -
钱图大展:
无法下载
大型网站用户行为记录的一个实现--基于clickStream(第一部分) -
fm395728572:
shell脚本中用到了环境变量,但是获取不到,例如脚本中有一句 ...
ganymed-ssh2 for Java -
liuhanjiang:
我qq147229234
大型网站用户行为记录的一个实现--基于clickStream(第一部分) -
liuhanjiang:
博主 我利用您提供的方法实现博文中介绍的clickstream ...
大型网站用户行为记录的一个实现--基于clickStream(第一部分)
使用构造器注入:
以前我们都是使用setter方法给属性注入值的,现在我们来看看另外一种注入方法:构造器注入
步骤:
(1)改写 PersionServiceBean.java ,为注入的属性加上构造方法
package cn.com.xinli.service.impl;
import org.apache.log4j.Logger;
import cn.com.xinli.dao.PersionDao;
import cn.com.xinli.service.PersionSevice;
public class PersionServiceBean implements PersionSevice
{
Logger log=Logger.getLogger(PersionServiceBean.class);
private PersionDao persionDao;
private String name;
public PersionServiceBean(PersionDao persionDao, String name) {
this.persionDao = persionDao;
this.name = name;
}
public String getName()
{
return name;
}
public void setName(String name)
{
this.name = name;
}
public PersionDao getPersionDao()
{
return persionDao;
}
public void setPersionDao(PersionDao persionDao)
{
this.persionDao = persionDao;
}
public void init()
{
log.info("初始化资源");
}
public PersionServiceBean()
{
log.info("我被实例化了");
}
public void save()
{
log.info("name:"+name);
this.persionDao.add();
}
public void destory()
{
log.info("释放资源");
}
}
(2) 配置beans.xml,其中配置了一个依赖属性和一个基本的String类型
<bean id="persionServiceBean" class="cn.com.xinli.service.impl.PersionServiceBean" init-method="init" destroy-method="destory"> <constructor-arg index="0" type="cn.com.xinli.dao.PersionDao" ref="persionDao"></constructor-arg> <constructor-arg index="1" value="huxl"></constructor-arg> </bean>
(3) 测试:
ClassPathXmlApplicationContext ctx = new ClassPathXmlApplicationContext("beans.xml"); PersionSevice ps=(PersionSevice)ctx.getBean("persionServiceBean"); ps.save();
结果:
INFO (PersionServiceBean.java:37) - 初始化资源
INFO (PersionServiceBean.java:46) - name:huxl
INFO (PersionDaoBean.java:15) - 执行了PersionDaoBean中的add()方法
目前学习到了两种注入方式:
1.setter方式
2.构造起方式
发表评论
-
hibernatetemplate类使用
2010-03-19 22:25 1213http://115893520.iteye.com/blog ... -
Spring 中的JdbcTemplate使用
2010-03-19 22:11 35201.JdbcTemplate的execute()方 ... -
SpringAOP 的使用(两种方式)
2009-10-22 13:42 1536使用Spring AOP 拦截 方法,给被拦截的 ... -
第30讲--Spring提供的CharacterEncoding和OpenSessionInView功能
2009-09-19 18:24 1814CharacterEncoding: 在web ... -
第29讲--为Spring集成的Hibernate配置二级缓存
2009-09-18 00:29 3417合理的使用缓存策略,往往在web开发中提高性能起到关键 ... -
第28讲--Struts与Spring集成方案2(Spring集成Struts)
2009-09-17 00:57 1662集成步骤: 1.和方案1一样需要在web. ... -
第27讲--Struts与Spring集成方案1(Struts集成Spring)
2009-09-16 08:25 1849Spring2.5+Hibernate3.3+Stru ... -
第25,26讲 --搭建和配置Spring与Hibernate整合的环境
2009-06-21 11:21 1623Spring2.5+Hibernate3.3+Stru ... -
第24讲 --使用Spring配置文件实现事务管理
2009-06-20 23:56 1786采用基于XML方式配置事务 <bean ... -
第23讲 --使用Spring注解方式管理事务与传播行为详解
2009-06-11 23:19 2263事务传播属性 REQUIR ... -
第21,22讲 --搭建和配置Spring与jdbc整合的环境+Spring集成的jdbc编码和事务
2009-06-10 08:06 2709Spring+JDBC组合开发配置数据源有两种方式: ... -
第20讲--aspectj的切入点语法定义细节
2009-06-06 17:47 3660表达式分析: expression=" ... -
第19讲 --使用Spring配置文件实现AOP
2009-06-06 17:21 1564上面我们是使用注解的方式实现spring AOP的,下面 ... -
第18讲 --使用Spring的注解方式实现AOP的细节
2009-06-06 15:48 1583上一讲我们使用spring注解的方式理由aop技术 ... -
第17讲 --使用Spring的注解方式实现AOP入门
2009-06-05 00:48 2288使用Spring进行面向切面(AOP)编程 要 ... -
第16讲 --使用CGLIB实现AOP功能与AOP概念解释
2009-06-04 07:42 1659当代理对象没有实现 ... -
第15讲 --使用JDK中的Proxy技术实现AOP功能
2009-06-04 07:34 2347当目标类实现了接口,我们可以使用jdk的Proxy ... -
第14讲 --让Spring自动扫描和管理Bean
2009-06-02 23:40 8767通过在classpath自动扫描方式把组件纳入sp ... -
第13讲 --Autowire注解与自动装配
2009-06-02 22:46 31511. Autowire 默认是 ... -
第12讲 --编码剖析@Resource注解的实现原理
2009-06-01 23:14 3309在这一讲开始之前,我们先学习一下jdk5.0 中的一个新 ...
相关推荐
10. **使用`PropertyPlaceholderConfigurer`加载属性文件** - 可以通过`PropertyPlaceholderConfigurer`来加载外部属性文件,并在其他地方通过`${database.url}`这样的占位符来引用这些属性值。 11. **自定义`...
- **构造器注入**:通过构造函数传递依赖。 - **Bean 属性**: - **id 和 name**:标识 Bean,便于引用。 - **属性注入**:为 Bean 设置属性值。 - **作用范围**:Bean 的生命周期和作用域,包括`singleton`、`...
4.3.3.详细讨论对象属性和构造器参数 4.3.3.1.设置空值 4.3.3.2.设置集合值 4.3.3.3.设置泛型集合的值 4.3.3.4.设置索引器属性 4.3.3.5.内联对象定义 4.3.3.6.idref节点 4.3.3.7.引用协作对象 4.3.3.8.value和ref...
9. **构造器方式的注入** - 通过构造函数参数,Parsley可以注入依赖对象,避免手动创建实例。 10. **方法注入** - 支持在对象的方法中注入依赖,使得对象的生命周期管理更为灵活。 在深入学习Parsley 2.3的过程...
- **构造器注入**:在构造函数中指定依赖。 - **其他配置细节**: - **id、name**:标识 Bean 的唯一名称。 - **简单属性的注入**:为 Bean 的简单属性如字符串、整型等注入值。 - **Bean 的作用范围**:设置 ...
3.3.3. bean属性及构造器参数详解 3.3.3.1. 直接量(基本类型、Strings类型等。) 3.3.3.2. 引用其它的bean(协作者) 3.3.3.3. 内部bean 3.3.3.4. 集合 3.3.3.5. Nulls 3.3.3.6. XML-based configuration metadata ...
3.3.3. bean属性及构造器参数详解 3.3.4. 使用depends-on 3.3.5. 延迟初始化bean 3.3.6. 自动装配(autowire)协作者 3.3.7. 依赖检查 3.3.8. 方法注入 3.4. bean的作用域 3.4.1. Singleton作用域 3.4.2. ...
- **应用场景**:在装配体设计过程中,需要调整第一个放置的零部件位置时使用。 #### 25. 尺寸名称复制与粘贴 - **技巧说明**:在使用零件族表格时,复制和粘贴尺寸名称到表格中,确保尺寸名称一致。 - **应用场景*...
第10章spring消息 10.1jms简介 10.1.1构建jms 10.1.2介绍jms的优点 10.1.3在spring中安装activemq 10.2协同使用jms和spring 10.2.1处理冗长失控的jms代码 10.2.2使用jms模板 10.2.3转换消息 10.2.4将spring...
10. 自动装配(Auto-Wiring):Spring自动检测并满足Bean之间的依赖关系,但这种方式可能导致不可预测的结果,因此通常不推荐使用。可以通过`autowire`属性设置自动装配模式。 11. 依赖检查(Dependency Checking)...
第10章 Spring消息 10.1 JMS简介 10.1.1 构建JMS 10.1.2 介绍JMS的优点 10.1.3 在Spring中安装ActiveMQ 10.2 协同使用JMS和Spring 10.2.1 处理冗长失控的JMS代码 10.2.2 使用JMS模板 10.2.3 转换消息 ...
第10章 Spring消息 10.1 JMS简介 10.1.1 构建JMS 10.1.2 介绍JMS的优点 10.1.3 在Spring中安装ActiveMQ 10.2 协同使用JMS和Spring 10.2.1 处理冗长失控的JMS代码 10.2.2 使用JMS模板 10.2.3 转换消息 ...
Spring支持多种方式注入Bean的依赖,如构造器注入、设值注入等。设值注入通过`<property>`标签实现,如下所示: ```xml ``` `name`属性对应Java类中的属性名,`value`属性提供该属性的值。 3. **工厂方法...
- **构造器注入**:通过构造器传递依赖关系。 - **属性注入**:通过 setter 方法注入依赖。 - **字段注入**:直接在字段上使用注解的方式注入依赖。 - **Bean 的生命周期管理**: - Bean 的初始化方法和销毁...
4.7.2. Application context构造器中资源路径的通配符 4.7.3. FileSystemResource 说明 5. 校验,数据绑定,BeanWrapper,与属性编辑器 5.1. 简介 5.2. 使用Spring的Validator接口进行校验 5.3. 从错误代码到...
4.7.2. Application context构造器中资源路径的通配符 4.7.3. FileSystemResource 说明 5. 校验,数据绑定,BeanWrapper,与属性编辑器 5.1. 简介 5.2. 使用Spring的Validator接口进行校验 5.3. 从错误代码到...
- **构造器注入**:在构造函数中通过参数来设置依赖,有利于依赖关系的不可变性和对象的稳定性。 - **Setter方法注入**:通过setter方法来设置依赖,适用于可选依赖或在运行时可能变化的依赖。 ### Spring事件处理 ...