`
Goodtiger
  • 浏览: 104114 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

配置文件是集中还是独立

    博客分类:
  • OSGi
阅读更多

标题很难表述我要说什么,简单我们先从XML配置文件谈起。

从单一一个框架来说,一般都会提供会有一个集中式的配置文件来添加具体的配置,随着应用的变大,配置文件就越来越大,那么你很可能做的就是把配置文件分成几个,拿Spring来说,你会有一个配置文件来写DAO,一个来写Service。。。但这只是一个应用,如果应用的数目变得很大的时候,你的配置文件就会非常的庞大,多个项目并行的时候,很容易配置文件就冲突了。

 

所以一个好的做法就是配置文件在各个应用中是独立的,只需要在自身的应用中配置自己的内容,在系统部署和运行的时候再整合到一起,这样系统的各个应用之间的影响就比较的小。

 

没有经历过配置文件痛苦的人应该对我上面的话没有感觉,配置文件对于系统来说,那就是一个扩展点,那么针对每个扩展点来实习自己的扩展就好了,放在代码中,这个很好理解,其实配置文件也可以这么来做。

 

现在我们的应用,就已经可以了,不过这一整套东西都是要底层的框架和平台的支持

5
0
分享到:
评论
11 楼 liweiandy 2008-09-28  
如果只是Spring的配置文件可以用XDoclet加上Ant,如果Spring版本高直接用注解
10 楼 penghao122 2008-09-28  
按模块分啦
9 楼 coolstar648 2008-09-28  
组织上决定!
8 楼 Goodtiger 2008-09-28  
jacklondon 写道

我现在比较倾向于把配置参数放在数据库中。我用 Apache common configuration 来读写。配置参数是 key/value 形式的。感觉不错。特别是大项目,很多人改配置文件,原来写文件配置容易冲突,改成数据表配置后,呵呵,一点点冲突都没有了!

都存在数据库的话,读取的时候会不会很很占资源
7 楼 lost_alien 2008-09-27  
我觉得还是分开写好,如果都写在一起,那这个文件就太大了,大文件在ide里打开是很痛苦的啊,至少在idea里是这样。。。。。
6 楼 Goodtiger 2008-09-27  
嗯,大家的解决方法都不错,在各自的场景下,最简单最合适的就好了。
5 楼 Goodtiger 2008-09-27  
chen-516888 写道

我都是用配置文件里的注释把各个部分区分开的
然后在最头部用注释写一段目录 各个部分有序号
感觉可以 但是多了也很麻烦

楼主的方法个人觉得很适合工程开发
但不知道整合的时候要注意哪些问题?


人多的时候,项目多的时候,大家都需要配置的时候,就很麻烦。
4 楼 抛出异常的爱 2008-09-27  
有多少个人就分成多少份
3 楼 llfanthony 2008-09-27  
分开配置。再按功能点加个前缀,这样基本上可以避免配置文件上的冲突。
2 楼 jian'shang 2008-09-27  
按测试类分包的结构,来做配置文件的包结构就行
1 楼 hq692761078 2008-09-27  
我新手看不太懂
有点模糊 但还是觉得 你说的不错  嘿嘿

相关推荐

    nginx+php-fpm配置文件的组织结构介绍

    例如,笔者所在的公司喜欢将所有的服务器配置文件集中在/home/server_config中,然后在该目录中新建一个子目录 nginx,再将/usr/local/nginx/conf 通过链接文件指向/home/server_config/nginx。 2.Virtual host的...

    SpringCloud Config Demo编写

    1.Spring Cloud Config 用于为分布式系统中的基础设施和微服务应用提供集中化的外部配置支持,分为服务端和客户端。...如果是持续交付到各个客户的服务器上,目前采用的事将外部配置文件放置在本地存储

    WAS6.1多机集群部署(AIX)

    如果服务器已经属于单元,则对于本地节点或服务器配置文件的更改都是临时的,通过在本地提交更改生效时,本地更改覆盖单元配置,但是当执行单元配置文档同步到节点的操作时,在单元级别上对主控服务器和主节点配置...

    Linux服务器实验二

    (1) 公司需要配置一台samba服务器。工作组名为smile,共享目录为/share,共享名为public,该共享目录只...请灵活使用独立配置文件,给出实现方案并上机调试 (4) 上机完成企业实战案例的samba服务器配置及调试工作

    C++程序案例MFCFrmX

    打算写一个C++程序 其实我是想用MFC静态库实现一个通过TXT配置文件在程序中动态创建界面的程序。 <br>主要思路是: <br>提供一个基类CSearchBaseDialog,在基类中,程序从配置文件中读取界面控件的信息,然后...

    社区协作配置标准Tamaya.zip

    支持各种运行时环境的编程API,比如独立应用、CDI和Spring等。Credit Suisse和Oracle曾试图为Java EE的配置创建一个宏伟的JSR标准,现在距离这个计划的破产已经过去了两年的时间。导致这个计划破产的原因很多,我们...

    Modular:以优雅的方式收集软件系统中那些独立且需初始化的类、配置等模块

    一般做法是在程序初始化的位置对这些类和模块进行集中配置。比如程序中有ModuleA、ModuleE、ModuleF这三个模块,而且这三个模块之间有依赖顺序ModuleE<ModuleF<ModuleA,这时候的初始化过程就是: ModuleE.Init...

    openlab开源社区

    基于角色的权限分配各应用独立权限枚举方式集中存储配置管理:各应用独立配置独立配置节点配置基类,方便加载配置URL管理:通过配置文件实现URL的管理支持灵活的Url重写每个应用有每个页面可兼容多个Url自己独立的...

    从实例谈面向对象编程、工厂模式和重构

    然后,在主程序界面的 Form_Load 事件中,读取配置文件的所有 key 值,填充 cbbMediaType 组合框控 件: 程序代码 public void Form_Load(object sender, EventArgs e) { cbbMediaType.Items.Clear(); foreach ...

    jExifToolGUI:jExifToolGUI是Phil Harvey出色的命令行ExifTool应用程序的多平台javaSwing图形前端。

    jExifToolGUI jExifToolGUI是Phil Harvey出色的命令行... 它读取/写入exif,gps,xmp,许多相机的制造商注释,JFIF,GeoTIFF,ICC配置文件,Photoshop IRB,FlashPix和许多其他标签。 它可以使用“参考”图像将标签写入

    poet-n7:该git的主要目的是提供安装NightWatchjs的步骤以及用于在本地和BrowserStack中运行测试的初始配置。 这个git的第二个目的是共享和集中有关此自动测试的示例

    $ java-版本Selenium WebDriver Nightwatch可与Selenium独立服务器一起使用,因此您需要做的第一件事是从Selenium发布页面下载Selenium服务器jar文件selenium-server-standalone-2.xxjar : 要设置和运行Selenium...

    archive-rotator:灵活的无状态归档备份循环脚本

    它不需要配置文件,只需命令行参数。 该脚本是独立的(需要python),并且通过对旋转文件应用命名约定来跟踪其状态。 了解有关档案轮换的概念: : 使用范例 我们假设您有一个归档文件,例如/path/to/foo/mydump....

    内部网络道德的方法论-研究论文

    内部Web道德的这种观点直接将自由的概念与流量和数据控制的集中性,访问日志文件的权限,自定义用户配置文件以及Web的功能,结构和道德之间的相互作用等问题联系在一起。 在“网络中立”的情况下,还证明了在处理...

    botbuilder-tools:欢迎使用Bot Framework工具存储库,该存储库是用于使用Microsoft Bot Framework构建机器人的开发人员的一系列工具的主页。

    新的BF CLI取代了传统的独立工具 Bot Framework SDK团队很高兴宣布合并的bot框架CLI工具的一般可用性。 新的BF CLI工具将取代旧的独立工具来管理Bot ... 在bot配置文件中创建和管理连接的服务 使用markdown文件构

    网络服务器配置完全手册

    第3 章文件服务器 .....................................................................................................................................39 3.1 文件服务器简介................................

    xxx公司活动目录设计方案.doc

    2 现状描述 当前XXX内部网络环境多数仍为松散的管理状态,在实际环境中无论是工作用桌面计 算机还是服务器都是采用工作组模型,各自独立。IT环境中的软硬件资源都无法实现充 分利用。 在大规模网络和服务器投资建设...

    高级数据备份恢复工具 Todo Backup Advanced Server 12.0.0 中文多语免费版.zip

    比较免费的是,EaseUS Todo Backup Advanced Server 还内建了备份档预览功能,可用「mount」功能将原本的备份档挂载成一个独立的磁碟机(虚拟硬碟),在「我的电脑」视窗中看起来就像是一个完全独立的硬碟空间,方便...

    Remote Desktop Connection Manager

    RDCMan 可以集中管理我们常用的远程桌面,并可在多个同时打开的远程面桌面间快速切换,而且即使我们重装了系统或在其他PC上也能快速载入这些常用的远程桌面。 前最新版本是 v2.7。 通过这款软件,我们便可以轻松的...

    TortoiseSVN客户端程序

    这样,就算你在昏天黑地的改了几个月后老板说不要了,还是按照过去那样,你也不会抓狂,简单的恢复版本操作就搞定一切。 2.2、什么是 Subversion Subversion是一个自由/开源版本控制系统,它管理文件和目录可以超越...

    C++命令行解析包gflags的使用教程

    配置参数分开还是集中管理没有严格的约束,关键要看项目里的统一规范,只是,gflags 可以支持这两种方式,允许用户更加灵活的使用。 当将参数分布到各个源码文件中时,如果定义了相同的参数,那么在编译的时候会直接...

Global site tag (gtag.js) - Google Analytics