`
hypgr
  • 浏览: 277769 次
社区版块
存档分类
最新评论

Spring技巧之简洁配置

阅读更多

Spring2.0在配置上调整了不少地方,增加更加灵活、简洁的配置方式,本文通过两个简单的示例来演示。
      配置Apache的一个数据源连接池,在Spring 2.0以前的版本中,我们可以使用类似下面的配置:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN" "http://www.springframework.org/dtd/spring-beans.dtd">
<beans>
<bean id="dataSource"
  class="org.apache.commons.dbcp.BasicDataSource"
  destroy-method="close">
  <property name="driverClassName">
   <value>org.gjt.mm.mysql.Driver</value></property>
  <property name="url">
   <value>jdbc:mysql://127.0.0.1:3306/easyjf-bbs</value> </property>
  <property name="username"><value>root</value> </property>
  <property name="password"><value>mypass</value></property>
 </bean>
</beans> 

 

 

      在Spring2.0中,可以把<value>及<ref>两个标签作为其父级<bean>标签的一个属性来定义,这样使得配置文件更加简洁,如下所示:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN" "http://www.springframework.org/dtd/spring-beans.dtd">
<beans>
<bean id="dataSource"
  class="org.apache.commons.dbcp.BasicDataSource"
  destroy-method="close">
  <property name="driverClassName"
   value="org.gjt.mm.mysql.Driver" />
  <property name="url"
   value="jdbc:mysql://127.0.0.1:3306/easyjf-bbs" />
  <property name="username" value="root" />
  <property name="password" value="mypass" />
 </bean>
</beans>

 

 


      另外,Spring2.0中还有一个非常实用的解析器,SimplePropertyNamespaceHandler,若配置文件中引用http://www.springframework.org/schema/p命令空间,则将会使用SimplePropertyNamespaceHandler来处理这个Bean的定义,可以在Spring2.0中的Bean中以更简单的方式配置设值方法注入,如下所示:

<?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:p="http://www.springframework.org/schema/p"
 xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd">

<bean id="dataSource"
  class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close"
  p:driverClassName="org.gjt.mm.mysql.Driver"
  p:url="jdbc:mysql://127.0.0.1:3306/easyjf-bbs" p:username="root" p:password="mysql" />
</beans>

 

 

在上面的配置中,使用p:url则可以直接注入BasicDataSource的url属性值,可以使用p:url-ref属性来引用另外一个Bean。
    如,Spring2.0以前的一个DAO配置:

<bean id="userDao" class="com.easyjf.bbs.dbo.springjdbc.UserDaoSpringJdbc">
       <property name="dataSource"><ref bean="dataSource"/></property>
</bean>  

 
  使用简短属性方式,则改成如下:

<bean id="userDao" class="com.easyjf.bbs.dbo.springjdbc.UserDaoSpringJdbc" p:dataSource-ref="dataSource" />

 

Spring2.0比以前的版本配置更加灵活、简洁,如果手工书写配置,则比较实用。当然,老的配置方式有很多开发工具如MyEclipse等都能识别,不需要我们动手一点一点的录入配置文件,大多数工具对新的配置方式还不能识别,因此,请根据实际情况酌情使用。

分享到:
评论

相关推荐

    spring和mybatis整合配置

    MyBatis与Spring的整合,可以让我们的数据访问层更加简洁,同时利用Spring的事务管理,实现更强大的功能。 整合Spring和MyBatis的关键步骤如下: 1. **添加依赖**:在Maven项目中,我们需要在pom.xml文件中添加...

    spring 与 spring mvc 整合 配置讨论

    本文将深入探讨Spring与Spring MVC的整合配置,并结合标签"源码"和"工具"来解析相关的技术细节。 首先,Spring框架的核心特性包括依赖注入(Dependency Injection, DI)和面向切面编程(Aspect-Oriented ...

    Spring框架数据库连接配置全指南

    本文将详细介绍如何在Spring框架中配置数据库连接,包括使用JDBC、JPA、Hibernate等技术,以及如何利用Spring Boot的自动配置功能简化配置过程。 在Spring框架中配置数据库连接是一个基础而重要的任务。通过本文的...

    J2EE mvc spring 配置

    此外,Spring还提供了一个基于Java的配置方式,结合了XML的灵活性和注解的简洁性。 Spring框架不仅仅是一个MVC框架,它还包括一系列的子项目,如Spring Data支持多种数据访问技术,Spring Security提供认证和授权...

    Spring各版本核心配置文件备份

    这篇技术分享将探讨Spring不同版本的核心配置文件,以及它们在应用程序中的作用。 首先,Spring的核心配置文件通常是`applicationContext.xml`或`beans.xml`,这些XML文件用于定义和管理应用程序的bean。在早期版本...

    加载jar包中的spring配置文件

    在Java开发中,Spring框架是应用最广泛的IoC(Inversion of Control,控制反转)和AOP(Aspect Oriented Programming,面向切面编程)框架之一。当我们构建一个基于Spring的应用时,经常需要从jar包中加载配置文件,...

    spring + spring mvc + hibernate 之零配置之路源代码

    本文将详细解析"spring + spring mvc + hibernate 之零配置之路"这一主题,并探讨如何通过源代码实现无XML配置的Java应用。 Spring框架是一个全面的后端开发框架,它提供了依赖注入(DI)和面向切面编程(AOP)等...

    spring配置文件

    6. **数据访问集成**:Spring提供了对JDBC、Hibernate、MyBatis等多种数据访问技术的集成,使得数据访问层的配置变得简单。 7. **Spring MVC**:作为Spring的Web模块,Spring MVC提供了模型-视图-控制器架构,用于...

    spring famework 基于注解配置示例

    然而,随着注解(Annotation)技术的发展,Spring框架引入了基于注解的配置,使得代码更加简洁、直观。本示例将详细介绍如何使用注解配置实现Spring框架的注入。 首先,我们需要了解几个关键的注解: 1. `@...

    spring配置详解

    除了XML配置,Spring 3.0以后引入了Java配置,通过`@Configuration`注解的类来替代XML配置,使得配置更简洁且易于测试。 以上只是`applicationContext.xml`配置文件中一部分常见的知识点,实际应用中还有更多高级...

    MyBatis-Spring配置教程,非常适合初学者

    【MyBatis-Spring配置教程】是一份专为初学者设计的...这个【MyBatis-Spring教程】应该包含详细步骤和注释,帮助你逐步掌握MyBatis与Spring的整合技巧。记得遇到问题时多查阅资料,不断探索和解决问题,祝你学习顺利!

    spring配置全书.doc

    Spring配置全书中,作者Craig Walls深入探讨了Spring的各种配置技术,包括bean的定义、依赖注入的实现方式、AOP(面向切面编程)、事务管理、数据访问集成(如JDBC、ORM框架)以及Spring MVC等。此外,他还提到了...

    s2sh+springSecurity的注解配置例子

    标题 "s2sh+springSecurity的注解配置例子" 提供了一个关于整合Spring Security与Struts 2(S2)和Hibernate(SH)框架的注解配置实践的线索。这通常涉及到在Java web应用程序中创建一个安全的环境,通过利用Spring ...

    Spring AOP之基于Schema配置总结与案例

    此外,Spring还提供了自定义注解的方式定义切面,使得代码更加简洁和易读。 总之,Spring AOP基于Schema的配置方式为开发者提供了一种灵活的手段,能够方便地管理和控制横切关注点,提高了代码的可维护性和可复用性...

    Spring中文文档下载

    3.0版本是Spring的一个重要里程碑,引入了基于注解的配置,使得XML配置大幅减少,提高了开发效率。此外,3.0还引入了Spring Expression Language (SpEL),这是一个强大的表达式语言,用于在运行时查询和操作对象图。...

    SpringAop两种配置demo

    Spring AOP通过XML配置和注解配置都能实现相同的功能,但注解方式更简洁、直观,易于理解和维护。选择哪种方式取决于项目需求和个人喜好。在实际应用中,可以根据项目的规模和团队习惯灵活选择。了解并熟练掌握这两...

    Spring技术内幕:深入解析Spring架构与设计原理(第2版)+.pdf

    根据提供的文件标题“Spring技术内幕:深入解析Spring架构与设计原理(第2版)”和描述,我们可以了解到这是一本深入探讨Spring框架内部架构和技术细节的专业书籍。虽然标签中出现了“oracle”,但从标题和描述来看,...

Global site tag (gtag.js) - Google Analytics