一个读配置文件的类

    这个读配置的类是由之前的项目经理传给我的,比较好用。今天由于IVR流程需要配置的更灵活一些,需要用到这个类,于是就在此将它翻了出来。

    使用这个类需要4个jar包:

  1. commons-collections-3.1.jar
  2. commons-configuration-1.2.jar
  3. commons-lang-2.0.jar
  4. jsoft-common.jar

将这几个jar包放在$PROJECT/WEB-INF/lib下面,在需要用到的地方 " import jsoft.common.Config "。那么读哪个配置文件呢?在$PROJECT/WEB-INF/class下面放置名为Config.xml的文件,按照如下方式编写文件就Ok:

<?xml version="1.0" encoding="UTF-8"?>
<application>
    
<!-- ======================================================================= -->
    
<!-- ======================================================================= -->
    
<!-- The parameters change infrequently, and using by all projects -->
    
<!-- ======================================================================= -->
    
    
<!-- ivrflow-->
    
<!--  added by GongAm-->
    
<!-- denote using interface or not -->
    
<param name="interfaceStatus" value="off"/>

    
<!-- upload overwritable-->
    
<param name="upload_overwritable" value="false" />
    
<param name="upload_file_maxlength" value="1024" />
    
<!-- resource file defines -->
    
<param name="default_organization_id" value="defaultOrganizatioin" />
    
<param name="default_application_id" value="publishingSystem" />
    
<param name="default_command_modeling_organization" value="get" />
    
<param name="default_command_modeling_unit" value="get" />
    
<param name="default_command_modeling_position" value="get" />
    
<param name="default_command_modeling_organizationuser" value="get" />

    
<!-- resource file defines -->
    
<param name="security.default-role" value="security.default-role" />
    
<!-- resource file defines -->
    
<param name="ResourcesFile" value="Resources.xml" />
    
<!--
        <param name="Locale" value="zh_CN"/>
    
-->

    
<!-- config file defines -->
    
<param name="RespositoriesFile" value="Repositories.xml" />
    
<param name="TermsFile" value="Terms.xml" />
    
<param name="ModelingsFile" value="ModelingIndexes.xml" />
    
<param name="WebUILayoutFile" value="WebUILayout.xml" />
    
<param name="MimeMappingFile" value="application-mime-mapping.xml" />
    
<param name="TemplatesFile" value="Templates.xml" />
    
<param name="ControlTemplatesFile" value="ControlTemplates.xml" />
    
<param name="ToolbarsFile" value="Toolbars.xml" />
    
<param name="PageDefinesFile" value="PageDefines.xml" />
    
<!-- url constant defines -->
    
<param name="RespositoriesURLPrefix" value="/repository" />
    
<param name="EXT_VISCERA" value=".vsc" />
    
<!-- modeling url ext -->
    
<param name="EXT_MODELING" value=".dl" />
    
<!-- modeling url ext -->
    
<param name="EXT_VISCERA_CONTENT" value=".html" />
    
<!-- model edit form  name define -->
    
<param name="DefaultFormName" value="ModelEditForm" />


    
<!-- request parameter key defines -->
    
<param name="req_command_id" value="id" />
    
<param name="req_command_command" value="command" />
    
<param name="req_command_modelingid" value="modelingid" />
    
<param name="req_command_newitem" value="newitem" />
    
<param name="req_command_parameter" value="parameter" />
    
<param name="req_command_pageno" value="pageno" />
    
<param name="req_command_pagesize" value="page_size" />
    
<param name="req_command_sortfield" value="sortfield" />
    
<param name="req_command_sortorder" value="sortorder" />
    
<param name="req_command_searchstring" value="searchstring" />
    
<param name="req_key_exttypeid" value="exttypeid" />
    
<!-- atrribute keys defines -->
    
<param name="attr_key_context" value="modelingcontext" />
    
<param name="attr_key_modeling" value="modeling" />
    
<param name="attr_key_command" value="cmdobj" />
    
<param name="attr_key_object" value="obj" />
    
<param name="attr_key_page" value="page" />
    
<param name="attr_key_pagelist" value="searchresult" />
    
<param name="attr_key_pagefilter" value="pagefilter" />
    
<param name="attr_key_forward" value="forward" />
    
<param name="attr_key_userid" value="userId" />
    
<param name="attr_key_subject" value="jsoft.login.subject" />
    
<param name="attr_cache_key_context" value="cache_modelingcontext" />

    
<!-- jstl keys defines -->
    
<param name="jstl_key_list" value="list" />
    
<!-- command names defines -->
    
<param name="command_search" value="search" />
    
<!-- default page size defines -->
    
<param name="default_page_size" value="20" />
    
<!-- start_page_no defines -->
    
<param name="start_page_no" value="1" />
    
<!-- jsp url errror page defines -->
    
<param name="jsp_url_error" value="/error.jsp" />
    >

    
<!-- ======================================================================= -->
    
<!-- =============================  END  =================================== -->


    
<!-- ======================================================================= -->
    
<!-- ======================================================================= -->
    
<!-- The parameters change for project -->
    
<!-- ======================================================================= -->

    
<!-- application jndi datasource -->
    
<param name="jndi_datasource" value="jdbc/publishing" />
    
<param name="jndi_datasource_query" value="java:comp/env/jdbc/publishing" />

    
<!-- request commands type defines -->
    
<param name="model_id_organization" value="organization" />
    
<param name="model_id_unit" value="unit" />
    
<param name="model_id_position" value="position" />
    
<param name="model_id_role" value="role" />
    
<param name="model_id_organizationuser" value="organizationuser" />
    
<param name="model_id_publicuser" value="publicuser" />
    
<param name="model_id_usergroup" value="usergroup" />
    
<!-- request commands type defines -->
    
<param name="image_url_error" value="/img/icons/trips/error.jpg" />
    
<param name="image_url_info" value="/img/icons/trips/info.jpg" />
    
<param name="image_url_warning" value="/img/icons/trips/warning.jpg" />
    
<param name="image_url_tree_organization" value="img/tree/organization.jpg" />
    
<param name="image_url_tree_unit" value="img/tree/unit.jpg" />
    
<param name="image_url_tree_position" value="img/tree/position.jpg" />
    
<param name="image_url_tree_employee" value="img/tree/employee.jpg" />
    
<param name="image_url_tree_customer" value="img/tree/customer.jpg" />

    
<!-- tree defines -->
    
<param name="jsp_organization_tree" value="admin/organizationtree.jsp" />
    
<param name="xtree_root_node_id" value="root" />
    
<param name="xtree_root_node_name" value="组织结构管理系统" />
    
<param name="req_key_xtree_id" value="treeType" />
    
<param name="req_key_xtree_parentid" value="parentId" />
    
<param name="req_key_xtree_nodelayer" value="nodeLayer" />
    
<param name="req_key_xtree_selectedid" value="selectedId" />

    
<!-- request parameter keys defines -->
    
<param name="req_key_organizationid" value="organizationid" />
    
<param name="req_key_unitid" value="unitid" />
    
<param name="req_key_positionid" value="positionid" />
    
<param name="req_key_typeid" value="typeid" />
    
<param name="req_key_exttypeid" value="exttypeid" />
    
<!-- ======================================================================= -->
    
<!-- =============================  END  =================================== -->



    
<!-- ======================================================================= -->
    
<!-- ======================================================================= -->
    
<!-- The parameters change for project -->
    
<!-- ======================================================================= -->

    
<!-- application debug flag -->
    
<param name="system_debug" value="false" />
    
<!--
        application path defines
        jsoft_upload_path:文件上传路径
    
-->
    
<param name="jsoft_app_root" value="/jsoftdata/publishing/" />
    
<param name="jsoft_data_path" value="/jsoftdata/publishing/data" />
    
<param name="jsoft_config_path" value="/jsoftdata/publishing/conf" />
    
<param name="jsoft_define_path" value="/jsoftdata/publishing/conf" />
    
<param name="jsoft_upload_path" value="/jsoftdata/publishing/upload" />

    
<param name="import_subscibe_status" value="10" />

    
<!-- ======================================================================= -->
    
<!-- =============================  END  =================================== -->





    
<!-- ======================================================================= -->
    
<!-- ======================================================================= -->
    
<!-- The parameters of the specifical project -->
    
<!-- ======================================================================= -->

    
<!-- TRIM_APPENDING -->
    
<param name="TRIM_APPENDING" value="..." />
    
<param name="MORE_APPENDING" value="更多..." />
    
<!-- ======================================================================= -->
    
<!-- =============================  END  =================================== -->







    
<!-- ======================================================================= -->
    
<!-- ======================================================================= -->
    
<!-- The command defines of the specifical project -->
    
<!-- ======================================================================= -->


    
<!-- request commands type defines -->
    
<commands>
        
<!--
            Attributes (command):
            name           : command name, hidden in html. request must post/get a command,
            '                the command request parameter name is defined with "req_command_command".
            type           : define the command's type.
            '                object, will parse a model's object for subsystem.
            '                page, will parse a page object for subsystem.
            '                newObject      : this command will create an new model object.
            saveObject     : this command will save an new/updated model object.
            displayMessage : forgetted.
            identify       : this command only permit to execute once. if command has this attribute,
            '                it can't be submit reduplicate.
        
-->
        
<command name="add" type="object" newObject="true" description="newObject" />
        
<command name="get" type="object" />
        
<command name="remove" type="object" displayMessage="true" identify="true" />
        
<command name="save" type="object" saveObject="true" displayMessage="true" identify="true" />
        
<command name="view" type="object" />
        
<command name="search" type="page" />
        
<command name="financeaudit" type="command" />
        
<command name="manageraudit" type="command" />
        
<command name="auditdeny" type="command" />
        
<!--  新建数据 -->
        
<command name="generatedata" type="command" />
        
<!--  创建数据文件 -->
        
<command name="generatefile" type="command" />
        
<globals>
            
<variable>g_organizationid</variable>
            
<variable>g_unitid</variable>
            
<variable>g_positionid</variable>
            
<variable>g_magazineid</variable>
            
<variable>g_magazineperiodid</variable>
            
<variable>g_periodicalid</variable>
        
</globals>
    
</commands>


    
<!-- ======================================================================= -->
    
<!-- =============================  END  =================================== -->


    
<!-- ======================================================================= -->
    
<!-- ======================================================================= -->
    
<!-- The converters of the specifical project -->
    
<!-- ======================================================================= -->

    
<coverters>
        
<coverter coverter="jsoft.common.util.converters.DateConvert" classname="java.util.Date" />
        
<coverter coverter="jsoft.common.util.converters.DateConvert" classname="java.sql.Timestamp" />
        
<coverter coverter="jsoft.common.util.converters.NullConvert" classname="java.lang.Integer" />
        
<coverter coverter="jsoft.common.util.converters.NullConvert" classname="java.lang.Double" />
    
</coverters>


    
<!-- ======================================================================= -->
    
<!-- =============================  END  =================================== -->



    
<!-- ======================================================================= -->
    
<!-- ======================================================================= -->
    
<!-- The security defines of the specifical project -->
    
<!-- ======================================================================= -->

    
<!--持久化工厂-->
    
<persistence-config>
        
<session-factory name="default" class="jsoft.common.persistent.HibernateSessionFactory" configfile="/hibernate.cfg.xml" />
        
<session-factory name="nugl" class="jsoft.common.persistent.HibernateSessionFactory" configfile="/hibernate.cfg.xml" />
    
</persistence-config>
    
<!--
        persistence-config>
        <session-factory name="default"
        class="jsoft.common.persistent.HibernateSessionFactory"
        configfile="/hibernate.cfg.xml"/>
        <session-factory name="nugl"
        class="jsoft.common.persistent.HibernateSessionFactory"
        configfile="/hibernatenugl.cfg.xml"/>
        </persistence-config
    
-->
    
<!-- 系统内工厂实例 -->
    
<factory-config>
        
<mananger-factory-class>com.ghca.btiss.util.ProcessorFactoryImpl</mananger-factory-class>
        
<factory-config-files>
            
<config-file>/Application-Processor.xml</config-file>
            
<config-file>/Application-Dao.xml</config-file>
        
</factory-config-files>
    
</factory-config>
    
<!--字典表-->
    
<dictionary>
        
<!-- 用户状态 -->
        
<record type="organizationuser.status.normal" name="正常" identifier="normal" code="1" />
        
<record type="organizationuser.status.disable" name="禁用" identifier="disable" code="0" />
    
</dictionary>
    
<security>
        
<authorization>true</authorization>
        
<security-policy-provider>jsoft.corporation.auth.policy.SecurityPolicy</security-policy-provider>
        
<login-module-name>PublishingLoginModule</login-module-name>
        
<login-config-file>/login.conf</login-config-file>
        
<default-role>system_connector</default-role>
        
<login-url>/login.jsp</login-url>
        
<logout-url>/login.jsp</logout-url>
        
<onError-url>/login-error.jsp</onError-url>
        
<index-url>/index.jsp</index-url>
        
<ignore-url-list>
            
<url>login.do</url>
        
</ignore-url-list>
    
</security>

    
<!-- ======================================================================= -->
    
<!-- =============================  END  =================================== -->
</application>

    配置这个类花了一上午的时间,因为出现了java.lang.NoClassDefineFound的错误,顺着这个错误找到了jsoft-common.jar依赖的commons-configuration-1.2.jar,以此类推,找到了需要的另外几个包,一切OK。

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值