首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 软件管理 > 软件架构设计 >

关于配备的那一点点事

2012-07-03 
关于配置的那一点点事如果你一直在做架构。你设计的框架一定是可配置的,包括那些数据库的配置,当然,还有其

关于配置的那一点点事
如果你一直在做架构。你设计的框架一定是可配置的,包括那些数据库的配置,当然,还有其它。

一个灵活的程序肯定会有各种各样的配置,具体使用情况也各不相同。本文讲解的是纯java配置文件的加载,没有使用任何ssh之类的东东。毕竟框架这样的东东学不长的,基础打好,对人生日后的发展都有好处。

最常见的可能有SQL,XML,Property文件以及Java常量类。

对于一些常用的变量,使用Java常量类可能是最好的选择了。直接用,快速随手可取。用于多处常用的地方是个不错的选择。

SQL用于验证那些登录,MD5等需要验证以及和某些功能模块相连的数据,放在一起读取,是常用的手法之一。

最后XML,Property两种文件常用于配置一些数据库连接,缓存,国际化等,而Property就是我要讲的重点。

至于XML由于读取可能稍微复杂,具体可看我的另一篇文件。专门讲解如何使用Dom4j/JDom+Xpath读取XML的博文。XML还有另一个用途,和JSON一样。用来传递数据也是不错的选择。

现在我在这里讲解,如何使用Java静态常量类+property读取配置文件,并快速加载到程序中。对于我这种经常架构的人,这是最常用的手段。一般情况我想我都会配置这么一个文件。

好了。土豆不喜欢废话,介绍完了,直接上代码。

config.properties

  




 
 package com.sinoglobal.cons;            import com.sinoglobal.utils.DateUtils;                  /**      * 常量类      *       * @author lz      */      public class Const {                public static String SysStartTime=DateUtils.getNowDate("yyyy-MM-dd HH:mm:ss.SSS");  //平台启动时间          public static long reqCount=0;//平台请求次数          public static int sendtimes=3;  //发送短信失败重发请求最大次数          public static int receivetimes=3;   //接收短信转发请求最大次数                              /**============================|          *           * 发送短信验证          *           ============================|*/          //远程连接验证          public static final String noFunctions="2;用户没有相应的权限";          public static final String noServer="2;没有找到相应的短信服务器";          public static final String sendfailed="2;短信发送失败";          public static final String onMaxNo="2;超过最大群发数量";          public static final String noNet="2;网关未连接";          public static final String onMaxWord="2;短信字数超过70";          public static final String apiError="2;API短信客户端调用失败";                    public static final String loginError="用户名或密码错误";          public static final String md5Error="md5校验未通过....";          public static final String connError="远程连接失败";          //信息验证          public static final String infoError="2;信息输入不完整";          public static final String onMobileMax="2;手机号码长度大于500";          public static final String mobileTypeError="2;手机号码格式不正解";          public static final String DateError="2;时间格式不正确";          public static final String onXcodeMax="2;短信子号+扩展码长度不能大于8位数";          public static final String xcodeIsNotNo="2;扩展码为非法数字";          public static final String xcodeIsUp0="2;扩展码必须大于0的整数";          public static final String xcodeError="2;扩展码[去除前两位短信子号]只能是0-999999之间的数字";                }  



当然像log4j这样的配置就更为灵活了。可以在web.xml配置初始值,然后映射到log4j.properties中去。


像上面的这个常量类的好处是,不用每次声明变量来读取,在任何其它的地方都可以调用,关键是它是静态的,可以节约资源,也不用去数据库读取,无疑提高了效率,是java开发的便捷之道。而且我们可以配置多个模块,这样就层次分明了。对于一些要从数据库定时查询相关的东东我们可以放在这里,直接调用。毕竟轮循数据库是一件庞大而费力的工作。

当然,只有当你试过后你才会知道。


一个好的项目,一定有一个好的框架,一个灵活而简单的配置。
1 楼 kimmking 2011-12-29   数据库或是jcr、zookeeper来做配置的好处是
1、支持分布式下的统一管理
2、可以做到变更通知。 2 楼 jyjava 2011-12-29   讲得不错, 3 楼 jyjava 2011-12-29   我们公司用的是第二种方法

热点排行