- 浏览: 164619 次
- 性别:
- 来自: 武汉
文章分类
- 全部博客 (116)
- 随笔 (2)
- spring (24)
- struts (1)
- hibernate (6)
- log4j (0)
- mysql (14)
- oracle (0)
- ext (0)
- jQuery (0)
- HTML+CSS (2)
- Javascript (1)
- 其它杂碎 (0)
- IT (3)
- J2EE综合 (15)
- SQLServer (1)
- 好文章URL 待阅读 (3)
- 编辑器 (2)
- 版本控制 (5)
- Tomcat (4)
- DoJo (0)
- Ubuntu (11)
- Hadoop (3)
- cxf (3)
- maven (6)
- CI (5)
- H2 (1)
- JVM (1)
- FirefoxOS (1)
- Jboss (1)
- 操作系统 (1)
- C3P0 (2)
- Quartz (1)
- maps (10)
- 设计模式 (5)
最新评论
-
yogurt2012:
请问··我如果要调试H2数据库来分析其JOIN算法应该怎么做呢 ...
H2笔记 -
carlosfu:
很好很全,很有收获
Spring3笔记之 JDBC -
ponlya:
coldrush 写道看了你的配置 ,刚绝 file:后加绝对 ...
添加使用dtd文件 -
ponlya:
byp19980911 写道这不是很好的解决办法,最好是使用连 ...
java.net.SocketException:Software caused connection abort: socket write error -
ponlya:
ayanami001 写道为什么spring没有封装分页吗,那 ...
Spring3笔记之 JDBC(分页)
一、bean的命名采用标准Java命名约定:小写字母开头,首字母大写间隔的命名方式。如accountManager、accountService etc...;
二、每个bean都有一个或多个id(或称之为标识符或名称,在术语 上可以理解成一回事)。这些id在当前IoC容器中必须唯一。如果 一个bean有多个id,那么其他的id在本质上将被认为是别名;
三、在对bean进行定义时,除了使用id属性来指定名称 之外,为了提供多个名称,需要通过name属性来加以指定 。而所有的这些名称都指向同一个bean;
四、在定义bean时就指定所有的别名并不是总是恰当的。有时我们期望 能在当前位置为那些在别处定义的bean引入别名。在XML配置文件中,可用 <alias/> 元素来完成bean别名的定义。
src下二个配置文件:bean.xml,beanAlias.xml
com.spring305.test.annotationBean包下TestBean.java,com.spring305.test.annotationBean.po包下:BeanA.java,InnerClassA.java,BeanAAnnotaion.java
代码及详细注释如下:
BeanA.java
InnerClassA.javapublic class BeanA {
private static String name = "BeanA中的static变量";
public void initM(){//static
System.out.println(BeanA.class+" in initM() method");
}
public static void testStatic(){//static
System.out.println(BeanA.class+" in testStatic method");
}
public void destoryM(){
System.out.println(BeanA.class+" in destoryM() method");
}
//static类型内部类
static class InnerClassAImpl implements InnerClassA{
@Override
public void testInnerClass(){
//内部类中可以调用外部类中的变量,方法...etc
System.out.println(InnerClassA.class+"内部类调用 "+name);
testStatic();
}
}
}
public interface InnerClassA { void testInnerClass(); }
TestBean.java
BeanAAnnotaion.java bean.xml beanAlias.xml import org.junit.Test;
import org.springframework.context.ApplicationContext;
import org.springframework.context.annotation.AnnotationConfigApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;
import com.spring305.test.annotationBean.po.BeanA;
import com.spring305.test.annotationBean.po.BeanAAnnotaion;
import com.spring305.test.annotationBean.po.InnerClassA;
public class TestBean {
//@Test//xml
public void TestBeanXML(){
ApplicationContext ctx = new ClassPathXmlApplicationContext(new String[]{"bean.xml","beanAlias.xml"});
//通过ID,测试环境,ID
//BeanA a = ctx.getBean("beanA",BeanA.class);
//通过别名,测试别名
//BeanA a = ctx.getBean("beanAName",BeanA.class);//bean使用name 定义
//BeanA a = ctx.getBean("beanAName2",BeanA.class);//bean使用name定义多个时
//BeanA a = ctx.getBean("toName",BeanA.class);//alias定义别名
BeanA a = ctx.getBean("toName2",BeanA.class);//alias定义别名
a.destoryM();
//测试内部类的bean
InnerClassA ica = (InnerClassA)ctx.getBean("innerClass");
ica.testInnerClass();
}
@Test//annotation
public void TestApplicationContextEnv(){
ApplicationContext ctx = new AnnotationConfigApplicationContext(BeanAAnnotaion.class);
BeanAAnnotaion aBeanA = (BeanAAnnotaion)ctx.getBean("beanAAnnotaion");
System.out.println(aBeanA.test());;
String msg = ctx.getBean("test2",String.class);
System.out.println("msg "+msg);
}
}
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
@Configuration
public class BeanAAnnotaion {
@Bean(name = { "test1", "test2", "test3" })
public String test(){
return BeanAAnnotaion.class+" in test() method";
}
}
<!-- 在本文件中也可以定义别名,貌似放在前面与放在后面都不影响初始化 -->
<alias alias="toName2" name="beanAName2"/>
<!-- 当同时存在id与name时,则只会生成以id为名的bean
<bean id="beanA" name="beanAName" class="com.spring305.test.annotationBean.po.BeanA"></bean>
-->
<!-- 定义别名,中间可以用, ; 或者空格作间隔(separated by a comma (,), semicolon (;), or white space.) -->
<bean name="beanAName beanAName2 beanAName3" class="com.spring305.test.annotationBean.po.BeanA"></bean>
<!-- 下面是BeanA的一个内部类的加载及写法 -->
<bean name="innerClass" class="com.spring305.test.annotationBean.po.BeanA$InnerClassAImpl"></bean>
<bean id="beanB" class="com.spring305.test.annotationBean.po.BeanB"></bean>
<!-- 这个可以在另外一个文件中为其中的一个XML中定义的名为beanAName2的bean来命名别名toName --> <alias alias="toName" name="beanAName2"/>
<!--EndFragment-->
发表评论
-
Spring整合Hibernate(摘录)
2011-05-07 09:48 742简要步骤From:http://blog.csdn.net/s ... -
Spring3笔记之 JDBC(分页)
2011-04-25 22:08 2017接上篇的实体,DAO接口,实现,测试及XML http://p ... -
Spring3笔记之 JDBC
2011-04-25 22:02 7813使用Spring 的JDBC 先创建表: DROP TAB ... -
Spring3笔记之 事务传播
2011-04-24 15:51 1210摘自:http://zhxing.iteye.com/blog ... -
Spring3笔记之 AOP
2011-04-24 14:24 1901Spring AOP部分使用JDK动态代理或者CGLIB来为目 ... -
Spring3笔记之 AOP Cglib 代理
2011-04-24 14:13 1356JDK的Proxy实现代理要求 ... -
Spring3笔记之 AOP JDK 代理
2011-04-24 14:09 1053使用JDK代理,代理对象必须实现一接口 com.spring ... -
Spring3之 Resource
2011-04-21 22:49 3976主要是org.springframework.core.io. ... -
Spring3之 bean 注解
2011-04-20 22:18 1503小记下,spring注解相关: com.spring305. ... -
Spring3之 bean 定制bean特性
2011-04-19 21:10 1292Customizing the nature of a bea ... -
Spring3之 bean 作用域scope
2011-04-18 22:21 1460Bean scopes 作用域 5个:singleton,p ... -
Spring3之 bean Method injection
2011-04-17 20:04 1459Method injection(方法注入) bean都是s ... -
Spring3之 bean AutoWire
2011-04-17 12:01 5937Autowiring collaborators 自动装配 ... -
Spring3之 bean depends-on
2011-04-17 08:56 3273depends-on depend-on用来表 ... -
Spring3之 bean Lazy-initialized beans
2011-04-17 08:48 1971Lazy-initialized beans延迟 ... -
Spring3之 集合对象属性注入
2011-04-16 23:17 1209com.spring305.test.beanInit.cpo ... -
Spring3之 bean idref?
2011-04-16 18:39 965很是奇怪idref是干什么 ... -
Spring3之 bean简单属性注入
2011-04-16 17:40 1365DI (依赖注入)有二种: Constructor-based ... -
Spring3之 实例化bean2
2011-04-16 14:30 1015Spring3之 bean命名(http://ponlya.i ... -
Spring3之 IoC容器的实例化
2011-04-16 08:39 1516Bean:在Spring中,那些组成你应用程序的主体(ba ...
相关推荐
Spring中Bean的命名方式代码详解 在 Spring 框架中,Bean 的命名方式是非常重要的,因为它关系到 Bean 的唯一性和可读性。在本文中,我们将详细介绍 Spring 中 Bean 的命名方式代码详解,包括 Bean 的命名规则、...
然而,这两种接口的方法命名约定可能会导致代码过于依赖Spring,因此Spring 4.0引入了`@PostConstruct`和`@PreDestroy`注解作为替代,它们更符合JSR-250规范,可以更好地与其他Java EE环境兼容。 此外,`...
SpringBean是Spring框架的核心概念之一,它是Spring IoC容器管理的对象。在普元EOS平台中,SpringBean同样扮演着重要角色,用于封装业务逻辑、数据访问等功能。通过合理地设计和配置SpringBean,可以极大地提高开发...
`xmlns`指定了Spring Bean Schema的命名空间,`xsi:schemaLocation`指定了Schema文件的位置,用于验证XML文档的正确性。 ```xml <!-- 配置数据源 --> <bean id="dataSource" class=...
XML配置文件通常以`beans.xml`命名,而在Spring3中,我们可以使用如`@Component`、`@Service`、`@Repository`和`@Controller`等注解来声明bean。 Spring3还提供了数据访问的支持,包括JDBC模板、Hibernate和MyBatis...
### Spring3零配置注解实现Bean定义 #### 概述 在Spring框架中,传统的Bean定义方式主要依赖于XML配置文件。随着技术的发展与需求的变化,Spring为了简化配置过程,引入了注解的方式进行Bean的定义。这不仅减少了...
3. **命名 Spring Bean**: - **Bean 标识符**:每个 Bean 必须有唯一的标识,通常由字母组成,可以包含特殊字符。如果没有指定,容器会自动生成。 - **别名(Aliases)**:多个标识符可以通过逗号或分号分隔,...
在Spring框架中,XML配置是早期最常用的配置方式,它提供了详细且灵活的方式来定义和管理Bean的生命周期。本文将深入探讨Spring如何通过XML配置来装配Bean。 首先,要创建XML配置,你需要创建一个新的XML文件,通常...
3. **编写Schema处理器**: 这个处理器是Spring的BeanDefinitionParser接口的实现,它负责解析自定义元素,并根据配置创建相应的BeanDefinition。例如,如果解析到`<myapp:service>`元素,处理器可以创建一个服务类的...
Spring容器中Bean是Spring Framework的核心组件之一,负责管理和维护应用程序中的对象生命周期。以下是Spring容器中Bean知识点总结: 一、Bean的基本定义和Bean别名 在Spring容器中,Bean是指一个Java对象,它可以...
在这个主题中,我们将深入探讨Spring Security 2.0的命名空间配置,并通过实例来理解其工作原理。 在Spring Security 2.0中,命名空间配置是简化安全配置的一种方式。它允许开发者使用XML配置文件中的特定命名空间...
- 依赖注入(Dependency Injection, DI)和控制反转(Inversion of Control, IoC)是Spring框架的核心概念之一,它们使得对象之间的依赖关系不再硬编码在代码中,而是通过外部容器来管理这些依赖关系。 - **1.2 ...
- **Bean命名**:每个Bean都有一个或多个标识符,这些标识符在容器内必须是唯一的。可以通过id属性或name属性来指定。 - **Bean实例化**:Bean可以通过构造器、静态工厂方法或实例工厂方法来实例化。 #### 依赖 ...
在Spring框架中,"No bean named 'xxx' available"是一个常见的错误信息,它表示Spring容器在启动时未能找到名为'xxx'的bean定义。在本例中,报错信息是"No bean named 'student' available",意味着Spring容器找不...
例如,XML配置中的命名空间可能需要从`http://www.springframework.org/schema/beans/spring-beans-3.0.xsd`更改为`http://www.springframework.org/schema/beans/spring-beans.xsd`。同时,注意检查和调整配置中...
3. 使用 @Bean 注解指定多个名称。在方法上使用 @Bean 注解时,可以使用 name 属性指定多个名称。例如: ```java @Configuration public class MyConfigration { @Bean(name = {"myUser", "yourUser"}) public ...
这是因为Spring框架的命名约定要求Bean的名称应该是驼峰命名法的形式。 最后,需要强调的是,@Bean和@Service只是Spring框架中的两个组件扫描注解,还有其他许多注解,例如@Controller、@Repository、@Component等...
- 在Web服务领域,POJO通常指代那些被设计为可由框架自动管理的对象,例如Spring中的Bean。 #### 三、集成方案详解 本文档中的示例通过外部Spring容器获取指定的实现Bean,并通过Axis2提供服务。这涉及到以下几个...
Spring 在 IoC 容器中装配 Bean 详解 Spring 框架中的 IoC 容器是一个核心组件,它提供了 Bean 的装配、管理和依赖注入等功能。在 Spring 框架中,IoC 容器是 Bean 的容器,负责创建、管理和装配 Bean。在本文中,...