- 浏览: 48984 次
- 性别:
- 来自: 常州
-
最新评论
-
yi_17328214:
:idea:
js实现图片下拉列表 -
yi_17328214:
<form name="myform" ...
js实现图片下拉列表 -
seven_cuit:
今天阿里巴巴笔试就问了这个问题,竟然漏了枚举
JDK1.5新特性简介
Spring有四种Bean封装机制:Bean Wrapper机制、Bean Factory机制、ApplicationContext机制、Web Context机制等,它们所对应配置文件的内容也是不同的。下面,我们就以基于Bean Factory机制实现的Spring的三种依赖注入模式为例,介绍一下Spring配置文件的基本内容。
1、接口注入,示例代码如下:
public interface InterfaceB{
public Object doIt();
}
public class ClassC implements InterfaceB{
String str1;
public ClassC(String str1){
This. str1= str1;
}
public Object doIt(){
return "Hello,"+ strl+"!";
}
}
public class ClassA {
private InterfaceB clzB;
public Object doSomething(InterfaceB b) {
clzB = b;
return clzB.doIt();
}
………
}
该情况下的Spring配置文件:bean.xml的内容大致如下:
<beans>
<description>Interface Injection Sample</description>
<bean id="ClassC" <!--ClassC类的别名 -->
class="net.liyb.spring.qs.ClassC"> <!--ClassC类的别名所对应的类 -->字串3
<property name="str1"> <!-- 该属性名对应ClassC类的属性(名称一致) -->
<value>liyb</value> <!-- 该属性值将被绑定到ClassC类的对应属性(str1)上 -->
</property>
</bean>
<bean id="ClassA" <!-- ClassA类的别名 -->
class="net.liyb.spring.qs.ClassA"> <!--ClassA类的别名所对应的类 -->
<property name="clzB"> <!-- 该属性名对应ClassA类的属性(名称一致) -->
<ref local="ClassC"/> <!-- 该属性值将被绑定到ClassA类的对应属性(clzB)上,此处的属性值即"别名"为ClassC所对应的类的实例 -->
</property>
</bean>
</beans>
2、设值注入,示例代码如下:
public class DIByConstructor {
private final DataSource dataSource;
private final String message;
………
字串8
public setDataSource(DataSource ds) {
this.dataSource = ds;
}
public setmessage(String msg) {
this.message = msg;
}
public getDataSource() {
return this.dataSource;
}
public getmessage() {
return this.message;
}
………
}
该情况下的Spring配置文件:bean.xml的内容大致如下:
<beans>
<description>Values Injection Sample</description>
<bean id="dataSource" <!-- JndiObjectFactoryBean类的别名 -->
class="org.springframework.jndi.JndiObjectFactoryBean"> <!-- JndiObjectFactoryBean类的别名所对应的类 -->
<property name="jndiName"> <!-- 该属性名对应JndiObjectFactoryBean类的属性(名称一致) -->
<value>java:comp/env/jdbc/sample</value> <!-- 该属性值将被绑定到JndiObjectFactoryBean类的对应属性(jndiName)上 -->
</property>
</bean>
<bean id="DIByConstructor" <!--DIByConstructor类的别名 -->
字串8
class="net.liyb.spring.qs.DIByConstructor"> <!--DIByConstructor类的别名所对应的类 -->
<property name="message"> <!-- 该属性名对应DIByConstructor类的属性(名称一致) -->
<value>HeLLo</value> <!-- 该属性值将被绑定到DIByConstructor类的对应属性(message)上-->
</property>
</bean>
<bean id="DIByConstructor" <!--DIByConstructor类的别名 -->
class="net.liyb.spring.qs.DIByConstructor"> <!--DIByConstructor类的别名所对应的类 -->
<property name="dataSource"> <!-- 该属性名对应DIByConstructor类的属性(名称一致) -->
<ref local="dataSource"/> <!-- 该属性值将被绑定到DIByConstructor类的对应属性(dataSource)上,此处的属性值即"别名"为dataSource所对应的类的实例-->
</property>
</bean>
</beans> 字串4
3、构造子注入,示例代码见日志:"Spring核心技术学习总结"中的1.2.3节。此时对应的配置文件同"2、设值注入"中的配置文件是一样的,所以具体内容在此省略。
发表评论
-
zt-Java异常处理机制的详细讲解和使用技巧
2010-08-07 14:18 7551. 异常机制 1.1 异 ... -
可重启线程及线程池类的设计-zt
2010-08-03 13:59 1635了解JAVA多线程编程的人都知道,要产生一个线程有两种方 ... -
junit 基本教程
2010-07-22 11:35 1017Eclipse中配置junit 在要使用JUNIT的p ... -
zt-ssh优缺点分析
2010-06-18 14:20 839字号:大 中 小 Struts跟Tomcat、Turb ... -
MySQL+Hibernate下连接空闲8小时自动断开问题解决方案
2010-06-18 13:46 1396Hibernate使用C3P0的连接池 ... -
ZT-c3p0的配置解释
2010-06-18 10:49 1193找到了一个关于c3p0的配置 <c3p0-confi ... -
JDK和Tomcat环境变量配置
2010-04-24 12:31 806JDK环境变量配置: 如果你的JDK安装在C盘里 ... -
zt- synchronized 关键字
2010-01-25 15:56 749synchronized 关键字, ... -
ZT-JDK中的URLConnection使用总结
2010-01-05 13:50 753针对JDK中的URLConnection连接Servlet的问 ... -
怎样用Java来获取真实的IP地址
2010-01-03 16:23 1367摘录自:http://www.blogjava.net/wan ... -
tomcat内存溢出总结(转)
2009-12-22 16:51 669在生产环境中tomcat内存设置不好很容易出现内存溢出。造成内 ... -
get/post时中文乱码问题的解决办法
2009-11-21 13:13 1793form有2中方法把数据提 ... -
基于表单的文件上传
2009-11-09 11:34 17911. 基于表单 ... -
struts2+spring简单配置
2009-11-04 09:35 7871,修改web.xml <!-- 配置spring 开始 ... -
java中的内存分配机制
2009-10-24 12:28 780Java把内存划分成两种:一种是栈内存,一种是堆内存。 在函 ... -
java 中参数的传递
2009-10-23 17:46 711public static void main(Str ... -
BEA WebLogic Server® 9.2 中文帮助网站
2009-10-10 15:48 749http://edocs.weblogicfans.net/w ... -
JRE和JDK的区别浅析
2009-09-30 14:43 822JRE和JDK的含义是什么呢 ... -
Hibernate 调用JDBC执行存储过程
2009-09-28 11:04 1389public boolean procMemberInfo(i ... -
SPRING中属性SCOPE的prototype是什么意思
2009-09-28 09:50 5580默认情况下,从bean工厂所取得的实例为Singleton(b ...
相关推荐
在普元EOS平台中,SpringBean同样扮演着重要角色,用于封装业务逻辑、数据访问等功能。通过合理地设计和配置SpringBean,可以极大地提高开发效率和系统的可维护性。 #### 开发前准备 - **首选项代码模板配置**:在...
`<beans>`元素是Spring配置文件的根元素,用于封装一个或多个`<bean>`元素。这使得开发人员能够在一个文件中定义和配置多个Bean,从而简化了应用程序的配置过程。 #### `<bean>` 元素 `<bean>`元素用于告诉Spring...
本篇将详细探讨两种工厂方法——实例工厂方法和静态工厂方法,用于创建Spring Bean。 首先,我们要理解Spring Bean的概念。Spring Bean是Spring IoC容器管理的对象,这些对象的生命周期、依赖关系以及初始化行为由...
标题:“spring的持久层封装” 描述:“spring持久层封装,新手可用,物超所值” 标签:“spring” 根据给定的文件信息,我们将深入探讨Spring框架中持久层封装的概念、重要性和具体实现方式。 ### 一、Spring...
在Java中,通常有两种方式实现动态代理:Java内置的`java.lang.reflect.Proxy`类和CGLIB库。 Spring AOP主要通过两种方式实现:JDK动态代理和CGLIB代理。JDK动态代理基于接口实现,如果目标对象实现了至少一个接口...
通常,我们会创建一个全局的静态Singleton类,如`BeanManager`,来封装获取Bean的逻辑。这样可以在整个应用中方便地获取任何需要的Bean。例如: ```java public class BeanManager { private static ...
本文将深入探讨如何在Spring框架中进行动态定时器的封装,结合标签"源码"和"工具",我们将探讨Spring与Quartz库的整合,以及如何通过源码理解其实现机制。 首先,让我们了解一下Spring的定时任务支持。Spring提供了...
在Spring框架中,有三种主要的定时任务机制可供开发者选择,分别是基于Quartz的定时机制、Spring自己的`@Scheduled`注解以及Java的`java.util.Timer`类。在这篇文章中,我们将重点讨论基于Quartz的定时机制,因为它...
对于一些复杂的项目来说,可能会涉及到多个不同的Spring配置文件,这时可以考虑封装一个自定义工具类来统一处理Bean的获取逻辑,例如题目中提到的`ApplicationContextUtil`: ```java import org.springframework....
在通过两种方式集成的过程中会摘取整体框架中的核心逻辑,简化代码实现过程,保留核心功能,例如:IOC、AOP、Bean生命周期、上下文、作用域、资源处理等内容实现。 适合人群:具备一定编程基础,工作1-3年的研发人员...
总之,BeanDefinition是Spring框架中描述bean的核心数据结构,它封装了bean的全部配置信息,使得Spring容器能够根据这些信息创建、初始化和管理bean实例。理解和掌握BeanDefinition对于深入学习Spring框架至关重要,...
在Spring框架中,"工厂Bean"是一个非常关键的概念,它扩展了传统的Bean定义,使得我们可以在Spring IoC容器中创建自定义的实例化逻辑。工厂Bean允许开发者在对象实例化时进行更复杂的控制,比如引入特定的初始化过程...
在Spring框架中,Bean工厂的初始化是一个关键过程,它涉及到许多内部机制的设置。首先,我们来看看`BeanFactory`接口,它是所有Spring Bean容器的顶级接口。`BeanFactory`提供了对Bean的声明式管理,包括获取Bean、...
在Spring Boot框架中,`spring-boot-starter`是其核心特性之一,它提供了一种便捷的方式来启动和配置项目。自定义`spring-boot-starter`是为了满足特定项目需求,将一些通用的功能模块化,方便在多个项目中复用,...
HttpInvoker是Spring框架的一部分,它提供了一种基于HTTP协议的远程调用机制,使得不同网络环境中的Java应用之间能够进行安全、高效的通信。本篇文章将深入探讨Spring HttpInvoker的原理以及如何对其进行封装,以便...
标题“spring2.5 Bean”指的是Spring框架2.5版本中的Bean管理机制。Spring是一个开源的应用框架,主要用于简化Java企业级应用的开发。在Spring框架中,Bean是核心概念,代表着应用程序中的对象,这些对象由Spring...
而Spring框架则是Java企业级应用开发的事实标准,提供了丰富的功能和优秀的依赖注入机制。本篇将详细讲解如何将ActiveMQ与Spring进行整合封装,实现高效、便捷的消息服务。 首先,ActiveMQ与Spring的整合主要基于...
这个压缩包文件“Spring入门操作代码,bean”显然包含了关于如何使用Spring框架进行基本操作的示例代码,主要涉及的是Spring框架的核心概念——Bean管理。 首先,Spring的核心理念是依赖注入(Dependency Injection...
Spring中的BeanDefinition是核心概念,它是Spring IOC容器的基础,用于描述Bean的元数据,包括Bean的行为、依赖关系和其他配置信息。BeanDefinition包含了Bean的全限定类名、作用域、生命周期回调方法、依赖的其他...