关于项目中属性配置文件的改进
在一些项目开发中,为了使项目具有灵活配置的特性通常会使用配置文件,把一些常用的属性数据通过配置文件的方式引入系统。然而,当这些属性文件中数据变得越来越多的时候,问题还是出现了。
加入配置文件的数据总结起来大致有以下几类:系统属性(比如系统首页地址等)、通用属性(比如性别等)、行业属性(比如官衔等)、以及用户自定义属性等。刚开始的时候,可能项目比较小,而且只是针对单一客户的,当客户有了修改这些属性数据的需求时,就直接去修改属性配置文件,谁也不愿意去考虑这写数据保存在属性配置文件中到底合适不合适。可是,随着项目逐渐完善,不同模块之间的属性配置文件个数越来越多,文件也变得越来越大,维护的工作量也相应增多,属性配置文件的问题就暴露出来了。
无论是使用Properties文件,还是XML文件,或者其他的属性配置文件,当文件个数变多,数据量变大之后,维护起来都很费劲。尤其是项目面临产品化的时候,一个项目做成熟之后,可能会被很多客户使用,不同的客户有不同的属性配置需求,如果有几百甚至几千个客户,属性文件修改的工作量可想而知,给项目实施增加了不少难度。其实,最严峻的问题还不在这里,由于属性配置文件里保存的数据都是由固定格式要求的,如果格式错乱就不能正常解析,所以在修改属性配置文件的时候还需要额外小心,否则可能就会造成系统异常。
对于属性配置文件暴露出来的问题,我个人认为,需要把系统属性相关的数据进行分类处理。我们不能单纯地认为因为属性配置文件有问题就不能用,更重要的是要搞清楚哪些数据才适合放在属性配置文件里。对于系统属性,如果是个性化的系统属性尽量不要放在属性配置文件中,包括行业属性,因为不同的地区可能同一个行业的业务也多多少少有差别,这些数据可以通过系统中的系统维护模块操作数据库来维护。而对于通用属性,相对比较固定,则可以通过属性配置文件来维护。可能对于一些小项目来说,系统维护模块还没有,但是对于一个成熟的项目,我个人认为,还是有必要包含系统维护模块的,提供一些维护系统的常用功能。
近期,做的一个项目面临了这个问题,所以就写了下来,如果有更好的处理方式,就一起交流下吧,欢迎留言~
转载于:https://www.cnblogs.com/wenlong/archive/2012/02/24/2375405.html
关于项目中属性配置文件的改进相关推荐
- IDEA springboot项目中properties配置文件 {针对将对应GBK改为UTF-8并勾选转为ASCII后仍无效情况} 运行时中文乱码解决
springboot项目中properties配置文件中,运行时中文乱码情况 file encoding里边进行设置,设为utf-8并勾选转为ascii,分别在setting.setting for ...
- 类项目中的配置文件app.config在打包安装后的信息获取的问题
在一个项目中碰到这样的一个问题,做一个WORD插件,功能在类库项目中实现了,配置信息存在类库项目的配置文件app.config中,在进行打包后,获取的配置文件中的DocType节点信息时,使用以下方法 ...
- js 读取json文件_JavaScript 项目中常见配置文件介绍
原文地址:https://github.com/whinc/blog/issues/14 本文介绍一些前端项目的通用配置及相关资源,以便你了解项目中常见配置的含义以及配置方式. .gitignore ...
- SpringBoot 项目中 YML 配置文件的使用
本篇文章用于总结 YML 配置文件的使用,如果错误之处,请批评指正,希望观众老爷们多多支持! 1. 概述 YML 是什么? YML (YAML Aint't a Martup Language) YA ...
- SpringBoot项目中ShiroConfig 配置文件无法注入bean和使用@Value注解的问题
在开发项目过程中,shiro配置类使用@Autowired无法将bean注入到spring容器中,并且使用@Value无法从配置文件中获取值的问题.查询得知需要将下面这个类改为static才正常,具体 ...
- ThinkPHP公共配置文件与各自项目中配置文件组合的方法
ThinkPHP公共配置文件与各自项目中配置文件组合的方法 文章TAG:thinkphp 公共配置文件 时间:2014-11-25来源:www.aspku.com 作者:源码库 文章热度: 146 ℃ ...
- Vue项目搭建常用配置文件!
1.前端跨域解决方案 request.js用来请求数据,封装的代码如下: request.js :在vue/src/utils 之下 ~ import axios from 'axios'const ...
- Node.js项目中动态加载环境变量配置
NODE_MODULES:项目中动态加载环境变量配置 开始 在平时的 Node.js 项目开发中,我们需要在项目中添加各种各样的配置:服务端口.服务地址.图片上传.数据库.Redis 等等. 通常情况 ...
- Java项目中数据库从mysql 5.7更换到mysql8.0.18版本
我们从网上下载或者购买一个项目之后,要想在本地运行起来,首先要做的事情就是查看所需要的环境是否一致,即Tomcat/IDEA/JDK/Mysql等版本要保持一致.今天主要来说一下我经常遇到的一些数据库 ...
最新文章
- 实现Windows Phone、Android和iOS平台的统一硬件访问
- 利用FastJSON 把list和map转换成Json
- 第二十一章:变换(三)
- 深入理解Redis系列之SpringBoot集成Redis
- HTML-HTML基本语法和标签
- 用 Windows Media Center 免费看大片 (二)
- new Random().nextInt
- Atitit 迭代法 “二分法”和“牛顿迭代法 attilax总结
- 没有IDEA与Eclipse,该怎么学Java?
- 速看,成都市关于促进低效工业用地企业提质增效的信息
- Duilib学习笔记(一)—— 环境搭建
- npm install 报错 npm ERR! errno ETIMEDOUT
- 网络——设备冗余HSRP
- 计算机笔记本摄像头无法使用,笔记本摄像头不能用怎么回事 笔记本摄像头不能用解决方法...
- 2020五四青年节 | 青年人在美团是怎样成长的?
- 计算机科学与计算机技术!
- Q-learning例1探索者【学习笔记3】
- Python生成密码字典教程
- ASP]在網頁中下SQL查詢.其結果轉成Excel檔
- 抖音短视频编辑工具EffectCreator 6.4.0中文版