`
sscmqhk
  • 浏览: 4446 次
  • 性别: Icon_minigender_1
  • 来自: 福建
最近访客 更多访客>>
文章分类
社区版块
存档分类
最新评论

转....使用import简化spring的配置文件

阅读更多
对于spring配置文件的编写,我想,对于经历过庞大项目的人,都有那种恐惧的心理,太多的配置文件。不过,分模块都是大多数人能想到的方法,但是,怎么分模块,那就是仁者见仁,智者见智了。我的策略是使用import。
基本代码格式如下
web.xml
    ......
    <context-param>
        <param-name>contextConfigLocation</param-name>
        <param-value>
            /WEB-INF/spring-config/applicationContext.xml
        </param-value>
    </context-param>
    ......


web.xml文件中只需制定一个文件
在/WEB-INF/spring-config/目录下包含了所有spring配置文件,包括一个总配置文件,以及各个模块的配置文件
applicationContext.xml
<?xml version="1.0" encoding="gb2312"?>
<!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN" "http://www.springframework.org/dtd/spring-beans.dtd">
<beans>

    <import resource="CTIContext.xml" />
    <import resource="customerContext.xml" />
    <import resource="customerServingContext.xml" />
    <import resource="manageContext.xml" />
    <import resource="routineContext.xml" />
    <import resource="systemContext.xml" />
    ...........
   包括数据源,以及事务的基本配置
    ...........
    这时所有DAO的基类,各个模块的DAO都配置成继承这个类,就省去了在配置sessionFactory的麻烦
    <!-- Base DAO -->
    <bean id="baseDAO" abstract="true"
        class="com.mycompany.myproject.framework.BaseDAOImpl">
        <property name="sessionFactory">
            <ref bean="sessionFactory" />
        </property>
    </bean>

</beans>

applicationContext.xml文件中使用import的方式导入有模块配置文件,以后若有新模块的加入,那就可以简单修改这个文件了
system模块配置文件
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN" "http://www.springframework.org/dtd/spring-beans.dtd">

<beans>

    <!-- DAO -->
    <bean id="userDAO" parent="baseDAO"
        class="com.mycompany.myproject.module.system.dao.UserDAOImpl">
        <constructor-arg>
            <value>com.mycompany.myproject.domain.system.User</value>
        </constructor-arg>
    </bean>

    <bean id="agentDAO" parent="baseDAO"
        class="com.mycompany.myproject.module.system.dao.AgentDAOImpl">
        <constructor-arg>
            <value>com.mycompany.myproject.domain.system.Agent</value>
        </constructor-arg>
    </bean>

    <bean id="agentGroupDAO" parent="baseDAO"
        class="com.mycompany.myproject.module.system.dao.AgentGroupDAOImpl">
        <constructor-arg>
            <value>
                com.mycompany.myproject.domain.system.AgentGroup
            </value>
        </constructor-arg>
    </bean>

    <!-- Service -->
    <bean id="userService" parent="baseTransactionProxy">
        <property name="target">
            <bean
                class="com.mycompany.myproject.module.system.service.UserServiceImpl">
                <property name="userDAO" ref="userDAO" />
            </bean>
        </property>
    </bean>

</beans>
可以仔细看这个文件是怎么使用spring中abstract的方式申明继承关系的。
我看到有不少人采用spring自带的策略,把DAO与service层的配置分开,我认为这种策略不好,因为大多数时候,这两部分都是需要同时变动的,若放在两个文件中的话,那就会增加了每次修改配置文件的时间,而且,不利于重用。
若是结合我的上篇文章(关于spring单元测试的)的策略,那么这种方式就会发挥更大的威力
分享到:
评论
1 楼 agapple 2008-05-13  
一般我们会将 业务层,dao层,vo层,源配置等都会放到一个独立的配置文件中,等项目复杂了查

找起来更方便,现在我们光一个dao层配置就已经达到几百行了

相关推荐

    spring配置文件:整理总结Spring中XML配

    ### Spring配置文件:整理与总结Spring中XML配置的最佳实践 #### 概述 Spring框架作为一个强大的Java应用框架,在企业级应用开发中占据了重要的地位。它为普通的Java对象(Plain Old Java Objects, POJOs)提供了...

    Spring配置文件spring-context.zip

    "Spring配置文件spring-context.zip"包含了Spring框架中的上下文配置,这是Spring管理对象及服务的核心。 `applicationContext.xml`是Spring应用上下文的主配置文件,它定义了bean的声明、bean之间的依赖关系以及...

    Spring Boot多模块配置文件读取

    - 使用`spring.config.import`属性可以导入其他配置文件,这在处理多模块项目时非常有用。 6. **使用Profile进行条件配置** - 利用Spring的Profile功能,根据运行环境选择不同的配置。 - 可以通过`spring....

    Spring 配置文件详解.doc

    在 Spring 配置文件中,属性的定义可以简化为单个标签。例如,以下代码: ```xml &lt;value&gt;fooValue ``` 可以简化为: ```xml ``` 同样,引用 Bean 的定义也可以简化: ```xml ``` 可以简化为: ```xml...

    Spring Boot技术知识点:如何获取application.yml配置文件里的相关属性(方法2)

    总的来说,Spring Boot的`@ConfigurationProperties`机制极大地简化了配置文件的使用,使得我们可以更专注于业务逻辑而不是配置管理。通过这种方法,我们可以确保代码与配置的解耦,提高代码的可维护性和可测试性。

    Spring 3.x 中文开发手册.pdf

    Spring 3.x 还引入了属性抽象层,这使得开发者可以在配置文件中使用占位符(placeholder),从而减少因环境变化而频繁更改配置文件的需求。例如,可以使用 `&lt;import resource="${JAVA_HOME}/com/bank/service/${env}...

    Spring 使用注解配置使用ehcache

    接着,我们需要创建一个Ehcache配置文件(ehcache.xml),定义缓存策略和缓存区域。例如: ```xml &lt;ehcache xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation=...

    Spring 最全约束配置文件

    #### 二、Spring配置文件基础知识 在Spring框架中,配置文件是整个系统的核心组成部分之一。它定义了Spring容器中的各种Bean及其之间的关系。Spring支持多种类型的配置方式,其中XML配置文件是最常见的一种形式。...

    spring配置文件详细介绍

    下面是对Spring配置文件的详细介绍。 首先,Spring配置文件通常是以`.xml`为扩展名的文件,例如`beans.xml`。这些文件存储在项目的`src/main/resources`目录下,以便在运行时被自动加载。Spring容器...

    spring2 整合 Dwr(把DWR的配置写到Spring的配置文件)

    **Spring2 整合 DWR:将DWR配置融入Spring配置文件** Direct Web Remoting (DWR) 是一个开源的JavaScript库,它允许在浏览器和服务器之间进行实时、安全的双向通信,使得Web应用程序能够拥有类似桌面应用的交互性。...

    spring 3.0配置示例

    在Spring 3.0版本中,引入了许多改进和新特性,包括对注解更广泛的支持,这使得配置文件更加简洁且易于维护。 首先,让我们关注Spring 3.0的配置文件。在Spring中,XML配置文件通常位于`applicationContext.xml`或...

    springBoot+springjpa.docx

    为了使用 Spring Boot 的自动化配置功能,我们需要在项目的 `pom.xml` 文件中引入 Spring Boot 的父 POM: ```xml &lt;groupId&gt;org.springframework.boot &lt;artifactId&gt;spring-boot-starter-parent &lt;version&gt;2.0.1....

    Eclipse spring基本配置步骤

    **步骤3:创建Spring配置文件** 1. 在项目的src目录下,新建一个名为`applicationContext.xml`的XML文件,这是Spring的主要配置文件。 **步骤4:配置Bean** 在`applicationContext.xml`中,定义Bean的基本结构。...

    29. Spring boot 文件上传(多文件上传)【从零开始学Spring Boot】

    在本教程中,我们将深入探讨如何使用Spring Boot实现文件上传功能,特别是多文件上传。Spring Boot简化了在Java应用程序中处理文件上传的过程,使得开发者能够更专注于业务逻辑,而不是底层的HTTP操作。以下是对该...

    Spring Boot技术知识点:如何读取不同路径里的applicationContext.xml配置文件4

    在Spring Boot应用中,我们通常使用YAML或Java配置来管理我们的应用程序设置,但有时我们需要兼容遗留系统或者有特殊需求,需要使用XML配置文件。本文将深入探讨如何在Spring Boot项目中读取不同路径下的`...

    spring配置文件----注解配置

    首先,我们需要理解Spring配置文件的作用。在早期的Spring版本中,所有的bean定义、依赖注入以及其他配置都存储在如`bsappConfig.xml`, `spring-config.xml`, `webapp-config.xml`等这样的XML文件中。这些文件通常...

    SpringMVC基于代码的配置方式(零配置,无web.xml)

    传统的SpringMVC配置往往依赖于XML文件,如web.xml和spring-servlet.xml等,但随着Spring框架的发展,出现了基于代码的配置方式,实现了零XML配置,提高了开发效率。本文将详细介绍如何在不使用web.xml的情况下,...

    Spring Boot高级教程之Spring Boot连接MySql数据库

    Spring Boot是一款基于Java的开源框架,旨在简化Spring应用程序的搭建和开发。随着互联网技术的发展,数据存储的重要性日益突出,各种数据库管理系统层出不穷,MySQL作为最流行的开源关系数据库管理系统之一,广泛...

    Spring ApplicationContext.xml配置的12个技巧演示教学.pdf

    import 可以用来引入其他配置文件,简化了配置文件的管理。 12. 使用 namespace 来简化配置文件 namespace 可以用来简化配置文件,避免了冗长的 XML 配置。 通过掌握这些技巧,你可以提高 Spring XML 配置文件的...

    第五章 SpringCloud 使用Feign调用服务.pdf

    首先,我们需要在项目的pom.xml文件中添加Spring Cloud Feign的依赖。如下所示: ```xml &lt;groupId&gt;org.springframework.cloud &lt;artifactId&gt;spring-cloud-starter-feign ``` 2. 启用Feign: 在服务调用者...

Global site tag (gtag.js) - Google Analytics