`
condeywadl
  • 浏览: 78259 次
  • 性别: Icon_minigender_1
  • 来自: 南京
社区版块
存档分类
最新评论

MyLibrary 问题分析(一)-Sring2.0多配置文件整合

阅读更多

 下过雪的学校看起来就是不一样~~特别是像我这样起得很早的人...宽阔的路上熙熙攘攘的几个人,远处雪白的美景一览无余,怎么说呢,真希望时间永远停留在那一刹那。扯远了......还是喜欢早上写BOLG的感觉。


 开发的系统因为使用了Spring2.0,所以涉及到了多配置文件的问题,虽然对我个人开发没有多大的帮助,但是团体开发却少不了这个东西。


 下面就来讲讲我所涉及到的多配置文件



  1. 普通:  因为是Web Protect 而且是自下而上开发,所以没有界面可以测试,只能自己开个Main Class测试, 这回它就成了一个普通的Java Protect, 如何导入多XML,我看了Spring2.0的API, 发现 ApplicationContext的构造函数居然有N个,除却最基本的单XML导入,还看到了一种导入数组的形式。 哈, 马上试试。发现居然成功了:

                

               

String[] configLocations = {"applicationContext-main.xml","applicationContext-hibernate.xml"};
ApplicationContext context = new ClassPathXmlApplicationContext(configLocations);

 

  

   2. Web: 如果在Web上整合, 那么只需配置Web.xml,,如:

                  

    <context-param>

<param-name>contextConfigLocation</param-name> 
<param-value>/WEB-INF/applicationContext-*.xml,classpath*:applicationContext-*.xml</param-value> 
</context-param>

<listener> 
<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class> 
</listener>

 

    其中 applicationContext-*.xml 是一种通配符的形式, 你也可以写完整的.....

  

    3. 在网上查了一下,发现还有几种形式, 但是比较之下发现并不实用:

    

        把几个配置文件写在一个配置文件里,如:

        <beans>

<bean id="default" class="org.springframework.context.support.ClassPathXmlApplicationContext"> 
<constructor-arg> 
<list> 
<value>applicationContext.xml</value> 
<value>applicationContext-business.xml</value> 
<value>applicationContext-scheduler.xml</value> 
</list> 
</constructor-arg> 
</bean> 
</beans>

 

    然后在web.xml文件中,使用自己定义一个ContextLoaderServlet来启动,这个ContextLoaderServlet         可以继承HttpServlet,然后在它的init()方法里取得BeanFactory,代码如下:

 

    

public class ContextLoaderServlet extends HttpServlet { 
      public ContextLoaderServlet() 
      { 
      }
      public void init() throws ServletException 
      { 
       //这个参数里的名字就是我们在BeanRefFactory.xml里定义的bean的名字。 
       DefaultBeanFactory.getFactory("default"); 
      }
      public void destroy() 
      { 
      } 
}

  

   然后定义一个DefaultBeanFactory类: 

   

public class DefaultBeanFactory { 
  protected static final BeanFactory getFactory(String s) 
  { 
     BeanFactoryLocator beanfactorylocator =SingletonBeanFactoryLocator.getInstance(); 
     BeanFactoryReference beanfactoryreference = beanfactorylocator.useBeanFactory(s); 
    return beanfactoryreference.getFactory(); 
} 
}

 


     最后在web.xml文件中配置如下: 

<servlet> 
<servlet-name>context</servlet-name> 
<servlet-class>com.lixh.web.servlet.ContextLoaderServlet</servlet-class> 
<load-on-startup>1</load-on-startup> 
</servlet>

 

     这种方式改动较多,也比较麻烦,但是可以根据自己的需要随机加载信息。

 


 

 

分享到:
评论

相关推荐

    MyLibrary-master.zip

    《MyLibrary-master.zip》是一个专为初学者设计的图书馆管理系统,它涵盖了登录、注册、图书借阅与归还以及常见的数据操作等基本功能。这个项目使用了SSM(Spring、SpringMVC、MyBatis)框架,这是一个在Java开发中...

    管理系统系列--MYLIBRARY图书管理系统 是基于Spring Boot + Mybatis 开发的图书管理系统.zip

    综上所述,MYLIBRARY图书管理系统通过Spring Boot和Mybatis的结合,构建了一个强大且易用的图书管理平台,涵盖了用户管理、图书管理、借阅操作、查询功能以及安全控制等多个方面。此外,其设计考虑到了系统的可扩展...

    图书综合管理系统-mylibrary

    随着科技的进步,mylibrary系统未来可能引入更多创新功能,如基于大数据的个性化推荐、移动应用支持、电子阅读资源的整合等,以适应现代图书馆的发展需求。 总的来说,《图书综合管理系统-mylibrary》是一个综合性...

    人工智能-项目实践-检索系统-MYLIBRARY图书管理系统 是基于Spring Boot + Mybatis 开发的图书管理系

    MYLIBRARY图书管理系统 是基于Spring Boot + Mybatis 开发的图书管理系统, 系统具有用户管理、角色管理、应用管理、图书分类管理、图书信息管理、借书管理、还书管理、图书检索、借还记录等功能。 后端 基础框架:...

    XBMC.MyLibrary-1.3.1.zip_it

    XBMC.MyLibrary-1.3.1.zip 是一个专为XBMC(Xbox Media Center,后更名为Kodi)设计的扩展工具,版本号为1.3.1。这个工具的主要功能是增强用户的媒体库体验,使得用户能够在XBMC平台上浏览和访问更多的电影资源。它...

    MyLibrary 我的图书馆

    而“我的图书馆(MyLibrary)”是一款专为Android平台设计的应用,它允许用户轻松地读取XML文件来获取图书信息,并且提供了个性化的功能,如添加和修改个人信息,以及查找本地的图书信息。本文将深入解析这款应用的...

    MyLibrary工具类库

    MyLibrary引入了注解处理器,允许开发者通过在XML布局文件对应的Activity或Fragment中使用注解,直接将UI元素与Java代码中的变量关联,并自动设置点击事件。例如,只需在字段上添加`@BindView(R.id.my_view)`注解,...

    MyLibrary20201003-21:47_stm32f103c8t6_源码

    STM32F103C8T6是意法半导体(STMicroelectronics)生产的一款基于ARM Cortex-M3内核的微控制器,广泛应用于各种嵌入式系统设计中。这款芯片具有丰富的外设接口和高性能计算能力,适用于工业控制、物联网设备、智能...

    mylibrary-debug.aar

    文件下载,多线程下载。断点下载等简单封装的aar包

    MYLIBRARY图书管理系统 是基于Spring Boot Mybatis 开发的图书管理系统 系统具有用户管理角.zip

    重点:所有项目都有sql文件,比其他博主项目要严谨一万倍所有项目本人亲自测试可运行使用!!有任何问题私我解决! 1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私...

    MyLibrary

    "MyLibrary-master"这个文件名可能指的是项目源代码或主版本。对于开发者来说,这意味着可以深入研究其内部机制,根据自己的需求进行定制和扩展。例如,如果希望增加对特定文件格式的支持,或者集成其他功能,如笔记...

    mylibrary_master.zip

    "mylibrary_master.zip" 是一个包含Qt图书管理系统的源代码压缩包,主要使用C++语言编写,适合初学者学习Qt GUI(图形用户界面)和线程系统的基础应用。这个项目可能是一个简易的个人图书馆管理系统,用于管理和跟踪...

    WPF封装成DLL方法

    出现这个问题的原因通常是因为在WPF项目中删除了默认生成的App.xaml文件,或者更改了其BuildAction设置。 ##### 2. 解决方案 - **恢复App.xaml的BuildAction设置**: - 找到App.xaml文件,在其上点击右键选择...

    Python-XAR允许你将多个文件打包到一个独立的可执行文件中

    Python-XAR 是一款用于Python开发的打包工具,它允许开发者将多个文件整合成一个独立的可执行文件。这个特性在软件发布和部署时非常有用,因为它简化了分发过程,使得用户无需安装额外的依赖就能运行程序。XAR 的...

    mylibrary_tushuguanlixitong_

    管理员登录图书管理软件系统可以进行读者管理、书籍管理、借阅情况查询分析。读者管理包括读者基本信息的添加、删除、修改以及根据读者编号和姓名查询读者信息,书籍管理包括书籍基本信息的添加、删除、修改以及根据...

    图书管理系统

    【图书管理系统】是一个基于SSH(Struts2、Hibernate和Spring)框架开发的应用示例,它展示了如何在实际项目中整合这三个技术。SSH是Java Web开发中的一个流行组合,提供了模型-视图-控制器(MVC)的设计模式,帮助...

    Asp.net2.0页面指令

    ### ASP.NET 2.0 页面指令详解 在ASP.NET开发中,页面指令是开发者非常熟悉的概念之一。这些指令主要用于向ASP.NET引擎提供有关如何处理页面的信息。本文将详细介绍几种常用的页面指令及其用法。 #### @Page @Page...

    MyLibrary:我的图书馆

    【压缩包子文件的文件名称列表】: MyLibrary-main 在项目结构中,`MyLibrary-main`很可能包含了项目的主模块或主源代码目录。这个目录通常会包含以下几个部分: 1. **src/main/kotlin**:Kotlin源代码文件存放于此...

Global site tag (gtag.js) - Google Analytics