📄 defaultservicepropertyhandler.java
字号:
/*
* DefaultServicePropertyHandler.java
*
* Created on 2002/01/07, 14:15
*/
package jp.co.intra_mart.framework.base.service;
import java.io.File;
import java.util.HashMap;
import java.util.Locale;
import java.util.Map;
import java.util.MissingResourceException;
import java.util.ResourceBundle;
import jp.co.intra_mart.framework.system.property.PropertyHandlerException;
import jp.co.intra_mart.framework.system.property.PropertyParam;
/**
* 僒乕價僗偺愝掕忣曬偵愙懕偡傞僨僼僅儖僩偺僾儘僷僥傿僴儞僪儔偱偡丅 <BR>
* 僾儘僷僥傿僼傽僀儖偼傾僾儕働乕僔儑儞枅偵暘妱偝傟傑偡丅偙偺応崌偺僼傽僀儖柤偼乽 <I>僾儗僼傿僢僋僗 </I>_ <I>傾僾儕働乕僔儑儞ID
* </I>.properties乿偱偡丅傑偨丄傾僾儕働乕僔儑儞偵埶懚偟側偄乽 <I>僾儗僼傿僢僋僗 </I>.properties乿偑偁傝傑偡丅 <BR>
* 僾儘僷僥傿僼傽僀儖偺僾儗僼傿僢僋僗偼
* {@link jp.co.intra_mart.framework.system.property.PropertyManager#getPropertyHandlerParams(String)}
* 偱僉乕偵 {@link ServiceManager#SERVICE_PROPERTY_HANDLER_KEY}
* 傪巜掕偟偨偲偒偵庢摼偝傟傞僷儔儊乕僞偺偆偪 {@link #DEFAULT_BUNDLE_NAME}偱庢摼偝傟傞傕偺偲側傝傑偡丅
* 巜掕偟側偐偭偨応崌偺僾儘僷僥傿僼傽僀儖偺僾儗僼傿僢僋僗偼 {@link #DEFAULT_BUNDLE_NAME_PARAM}偱帵偝傟傞傕偺偱偡丅
* <BR>
* 僾儘僷僥傿偺専嶕弴偼丄傾僾儕働乕僔儑儞偛偲偺僾儘僷僥傿僼傽僀儖乽 <I>僾儗僼傿僢僋僗 </I>_ <I>傾僾儕働乕僔儑儞ID
* </I>.properties乿偑桪愭偝傟傑偡丅奩摉偡傞僾儘僷僥傿偑尒偮偐傜側偄応崌丄堷偒懕偄偰乽 <I>僾儗僼傿僢僋僗
* </I>.properties乿傪専嶕偟傑偡丅 <BR>
* 僾儘僷僥傿偺愝掕撪梕偼埲壓偺偲偍傝偱偡丅 僾儘僷僥傿偺愝掕撪梕偼埲壓偺偲偍傝偱偡丅 <TABLE border="1">
* <TR>
* <TH nowrap>僉乕</TH>
* <TH nowrap>撪梕</TH>
* <TH nowrap>嫟捠</TH>
* <TH nowrap>傾僾儕働乕僔儑儞枅</TH>
* </TR>
* <TR>
* <TD nowrap>client.encoding</TD>
* <TD>僋儔僀傾儞僩偺僄儞僐乕僨傿儞僌 <BR>
* 愝掕偟側偄応崌丄儕僋僄僗僩偵懳偡傞暥帤僐乕僪偺曄姺偼峴傢傟傑偣傫丅</TD>
* <TD align="center">仜</TD>
* <TD align="center">亊</TD>
* </TR>
* <TR>
* <TD nowrap>encoding.attribute</TD>
* <TD>儘僌僀儞儐乕僓偺僄儞僐乕僨傿儞僌傪曐懚偡傞懏惈柤 <BR>
* 偙偺僾儘僷僥傿偼嫟捠偺僾儘僷僥傿僼傽僀儖偺傒偵愝掕偟傑偡丅</TD>
* <TD align="center">仜</TD>
* <TD align="center">亊</TD>
* </TR>
* <TR>
* <TD nowrap>client.locale</TD>
* <TD>僋儔僀傾儞僩偺儘働乕儖 <BR>
* 僋儔僀傾儞僩偐傜偺儕僋僄僗僩偺儘働乕儖偺僨僼僅儖僩偱偡丅</TD>
* <TD align="center">仜</TD>
* <TD align="center">亊</TD>
* </TR>
* <TR>
* <TD nowrap>locale.attribute</TD>
* <TD>儘僌僀儞儐乕僓偺儘働乕儖傪曐懚偡傞懏惈柤 <BR>
* 偙偺僾儘僷僥傿偼嫟捠偺僾儘僷僥傿僼傽僀儖偺傒偵愝掕偟傑偡丅</TD>
* <TD align="center">仜</TD>
* <TD align="center">亊</TD>
* </TR>
* <TR>
* <TD nowrap>context.path</TD>
* <TD><B>
* <I>旕悇彠偱偡丅偙偺僾儘僷僥傿偼愝掕偟側偄偱偔偩偝偄丅僐儞僥僉僗僩僷僗偺庢摼偼javax.servlet.http.HttpServletRequest偺getContextPath儊僜僢僪傪巊梡偟偰偔偩偝偄丅
* </I> </B> <BR>
* 僐儞僥僉僗僩僷僗 <BR>/ <I>僐儞僥僉僗僩僷僗 </I>偱巜掕偟傑偡丅 <BR>
* 僷僗偺巜掕偼昁偢"/"偱奐巒偟偰偔偩偝偄丅乮椺丗/imart乯 <BR>
* 偙偺僾儘僷僥傿偼嫟捠偺僾儘僷僥傿僼傽僀儖偺傒偵愝掕偟傑偡丅 <BR>
* 偙偺僾儘僷僥傿偑愝掕偝傟偰偄傞応崌丄im-J2EE Framework偺僞僌儔僀僽儔儕傪巊梡偟偨偲偒偵慗堏偡傞Web傾僾儕働乕僔儑儞偑曄峏偝傟傑偡丅
* </TD>
* <TD align="center">仜</TD>
* <TD align="center">亊</TD>
* </TR>
* <TR>
* <TD nowrap>servlet.path</TD>
* <TD>{@link ServiceServlet}偵儅僢僺儞僌偝傟偰偄傞僷僗乮昁恵乯 <BR>/
* <I>web.xml偱巜掕偟偨僒乕僽儗僢僩偺儅僢僺儞僌 </I>偱巜掕偟傑偡丅 <BR>
* 僷僗偺巜掕偼昁偢"/"偱奐巒偟偰偔偩偝偄丅乮椺丗/ServiceServlet乯 <BR>
* 偙偺僾儘僷僥傿偼嫟捠偺僾儘僷僥傿僼傽僀儖偺傒偵愝掕偟傑偡丅</TD>
* <TD align="center">仜</TD>
* <TD align="center">亊</TD>
* </TR>
* <TR>
* <TD nowrap>application.param</TD>
* <TD>傾僾儕働乕僔儑儞ID傪堷偒搉偡偲偒偵巊傢傟傞丄儕僋僄僗僩偺僷儔儊乕僞柤 <BR>
* 偙偺僾儘僷僥傿偼嫟捠偺僾儘僷僥傿僼傽僀儖偺傒偵愝掕偟傑偡丅</TD>
* <TD align="center">仜</TD>
* <TD align="center">亊</TD>
* </TR>
* <TR>
* <TD nowrap>service.param</TD>
* <TD>僒乕價僗ID傪堷偒搉偡偲偒偵巊傢傟傞丄儕僋僄僗僩偺僷儔儊乕僞柤 <BR>
* 偙偺僾儘僷僥傿偼嫟捠偺僾儘僷僥傿僼傽僀儖偺傒偵愝掕偟傑偡丅</TD>
* <TD align="center">仜</TD>
* <TD align="center">亊</TD>
* </TR>
* <TR>
* <TD nowrap>exception.attribute</TD>
* <TD>椺奜傪椺奜儁乕僕偵搉偡偲偒偺懏惈柤 <BR>
* 偙偺僾儘僷僥傿偼嫟捠偺僾儘僷僥傿僼傽僀儖偺傒偵愝掕偟傑偡丅</TD>
* <TD align="center">仜</TD>
* <TD align="center">亊</TD>
* </TR>
* <TR>
* <TD nowrap>controller.class. <I>僒乕價僗ID </I></TD>
* <TD><I>傾僾儕働乕僔儑儞ID </I>偲 <I>僒乕價僗ID </I>偵懳墳偡傞 {@link ServiceController}偺僋儔僗柤
* </TD>
* <TD align="center">亊</TD>
* <TD align="center">仜</TD>
* </TR>
* <TR>
* <TD nowrap>transition.class. <I>僒乕價僗ID </I></TD>
* <TD><I>傾僾儕働乕僔儑儞ID </I>偲 <I>僒乕價僗ID </I>偵懳墳偡傞 {@link Transition}偺僋儔僗柤</TD>
* <TD align="center">亊</TD>
* <TD align="center">仜</TD>
* </TR>
* <TR>
* <TD nowrap>nextpage.path. <I>僒乕價僗ID </I>. <I>僉乕 </I></TD>
* <TD><I>傾僾儕働乕僔儑儞ID </I>丄 <I>僒乕價僗ID </I>偲 <I>僉乕 </I>偵懳墳偡傞師偺慗堏愭偺僷僗 <BR>
* 僐儞僥僉僗僩儖乕僩偐傜偺憡懳僷僗偱巜掕偟傑偡丅乮僷僗偺巜掕偼"/"偱奐巒乯 <BR>
* 慗堏愭傪 <I>傾僾儕働乕僔儑儞ID </I>偲 <I>僒乕價僗ID </I>傛傝傕嵶偐偔巜掕偟偨偄応崌側偳偵巊梡偟傑偡丅</TD>
* <TD align="center">亊</TD>
* <TD align="center">仜</TD>
* </TR>
* <TR>
* <TD nowrap>nextpage.path. <I>僒乕價僗ID </I></TD>
* <TD><I>傾僾儕働乕僔儑儞ID </I>偲 <I>僒乕價僗ID </I>偵懳墳偡傞師偺慗堏愭偺僷僗 <BR>
* 僐儞僥僉僗僩儖乕僩偐傜偺憡懳僷僗偱巜掕偟傑偡丅乮僷僗偺巜掕偼"/"偱奐巒乯</TD>
* <TD align="center">亊</TD>
* <TD align="center">仜</TD>
* </TR>
* <TR>
* <TD nowrap>input.error.page.path. <I>僒乕價僗ID </I>. <I>僉乕 </I></TD>
* <TD><I>僒乕價僗ID </I>偲 <I>僉乕 </I>偵懳墳偡傞擖椡僄儔乕儁乕僕偺僷僗 <BR>
* 僐儞僥僉僗僩儖乕僩偐傜偺憡懳僷僗偱巜掕偟傑偡丅乮僷僗偺巜掕偼"/"偱奐巒乯</TD>
* <TD align="center">亊</TD>
* <TD align="center">仜</TD>
* </TR>
* <TR>
* <TD nowrap>input.error.page.path. <I>僒乕價僗ID </I></TD>
* <TD><I>僒乕價僗ID </I>偵懳墳偡傞僨僼僅儖僩偺擖椡僄儔乕儁乕僕偺僷僗 <BR>
* 僐儞僥僉僗僩儖乕僩偐傜偺憡懳僷僗偱巜掕偟傑偡丅乮僷僗偺巜掕偼"/"偱奐巒乯</TD>
* <TD align="center">亊</TD>
* <TD align="center">仜</TD>
* </TR>
* <TR>
* <TD nowrap>input.error.page.path</TD>
* <TD>僨僼僅儖僩偺擖椡僄儔乕儁乕僕偺僷僗 <BR>
* 僐儞僥僉僗僩儖乕僩偐傜偺憡懳僷僗偱巜掕偟傑偡丅乮僷僗偺巜掕偼"/"偱奐巒乯</TD>
* <TD align="center">仜</TD>
* <TD align="center">仜</TD>
* </TR>
* <TR>
* <TD nowrap>service.error.page.path. <I>僒乕價僗ID </I>. <I>僉乕 </I></TD>
* <TD><I>僒乕價僗ID </I>偲 <I>僉乕 </I>偵懳墳偡傞僒乕價僗張棟僄儔乕儁乕僕偺僷僗 <BR>
* 僐儞僥僉僗僩儖乕僩偐傜偺憡懳僷僗偱巜掕偟傑偡丅乮僷僗偺巜掕偼"/"偱奐巒乯</TD>
* <TD align="center">亊</TD>
* <TD align="center">仜</TD>
* </TR>
* <TR>
* <TD nowrap>service.error.page.path. <I>僒乕價僗ID </I></TD>
* <TD><I>僒乕價僗ID </I>偵懳墳偡傞僨僼僅儖僩偺僒乕價僗張棟僄儔乕儁乕僕偺僷僗 <BR>
* 僐儞僥僉僗僩儖乕僩偐傜偺憡懳僷僗偱巜掕偟傑偡丅乮僷僗偺巜掕偼"/"偱奐巒乯</TD>
* <TD align="center">亊</TD>
* <TD align="center">仜</TD>
* </TR>
* <TR>
* <TD nowrap>service.error.page.path</TD>
* <TD>僨僼僅儖僩偺僒乕價僗張棟僄儔乕儁乕僕偺僷僗 <BR>
* 僐儞僥僉僗僩儖乕僩偐傜偺憡懳僷僗偱巜掕偟傑偡丅乮僷僗偺巜掕偼"/"偱奐巒乯</TD>
* <TD align="center">仜</TD>
* <TD align="center">仜</TD>
* </TR>
* <TR>
* <TD nowrap>system.error.page.path. <I>僒乕價僗ID </I>. <I>僉乕 </I></TD>
* <TD><I>僒乕價僗ID </I>偲 <I>僉乕 </I>偵懳墳偡傞僔僗僥儉張棟僄儔乕儁乕僕偺僷僗 <BR>
* 僐儞僥僉僗僩儖乕僩偐傜偺憡懳僷僗偱巜掕偟傑偡丅乮僷僗偺巜掕偼"/"偱奐巒乯</TD>
* <TD align="center">亊</TD>
* <TD align="center">仜</TD>
* </TR>
* <TR>
* <TD nowrap>system.error.page.path. <I>僒乕價僗ID </I></TD>
* <TD><I>僒乕價僗ID </I>偵懳墳偡傞僨僼僅儖僩偺僔僗僥儉張棟僄儔乕儁乕僕偺僷僗 <BR>
* 僐儞僥僉僗僩儖乕僩偐傜偺憡懳僷僗偱巜掕偟傑偡丅乮僷僗偺巜掕偼"/"偱奐巒乯</TD>
* <TD align="center">亊</TD>
* <TD align="center">仜</TD>
* </TR>
* <TR>
* <TD nowrap>system.error.page.path</TD>
* <TD>僨僼僅儖僩偺僔僗僥儉張棟僄儔乕儁乕僕偺僷僗 <BR>
* 僐儞僥僉僗僩儖乕僩偐傜偺憡懳僷僗偱巜掕偟傑偡丅乮僷僗偺巜掕偼"/"偱奐巒乯</TD>
* <TD align="center">仜</TD>
* <TD align="center">仜</TD>
* </TR>
* </TABLE>
*
* @author INTRAMART
* @version 1.0
*/
public class DefaultServicePropertyHandler implements ServicePropertyHandler {
/**
* 僨僼僅儖僩偺儕僜乕僗僶儞僪儖柤偺僾儗僼傿僢僋僗
*/
public static final String DEFAULT_BUNDLE_NAME = "ServiceConfig";
/**
* 儕僜乕僗僶儞僪儖柤偺僷儔儊乕僞柤
*/
public static final String DEFAULT_BUNDLE_NAME_PARAM = "bundle";
/**
* 僨乕僞儕僜乕僗忣曬偑愝掕偝傟偰偄傞儕僜乕僗僶儞僪儖偺僾儗僼傿僢僋僗
*/
private String bundlePrefix;
/**
* 傾僾儕働乕僔儑儞偛偲偺僒乕價僗儕僜乕僗忣曬偑愝掕偝傟偰偄傞儕僜乕僗僶儞僪儖
*
* @uml.property name="bundles"
* @uml.associationEnd
* @uml.property name="bundles" multiplicity="(0 1)"
* qualifier="locale:java.util.Locale
* bundle:java.util.ResourceBundle"
*/
private Map bundles = new HashMap();
/**
* 嫟捠偺僒乕價僗儕僜乕僗忣曬偑愝掕偝傟偰偄傞儕僜乕僗僶儞僪儖
*
* @uml.property name="commonBundle"
* @uml.associationEnd
* @uml.property name="commonBundle" multiplicity="(0 1)"
* qualifier="locale:java.util.Locale
* commonBundle:java.util.ResourceBundle"
*/
private Map commonBundle = new HashMap();
/**
* DefaultServicePropertyHandler傪怴婯偵惗惉偟傑偡丅
*/
public DefaultServicePropertyHandler() {
setBundlePrefix(null);
}
/**
* 儕僜乕僗僶儞僪儖偺僾儗僼傿僢僋僗傪愝掕偟傑偡丅
*
* @param bundlePrefix
* 儕僜乕僗僶儞僪儖偺僾儗僼傿僢僋僗
* @since 3.2
*
* @uml.property name="bundlePrefix"
*/
private void setBundlePrefix(String bundlePrefix) {
this.bundlePrefix = bundlePrefix;
}
/**
* 儕僜乕僗僶儞僪儖偺僾儗僼傿僢僋僗傪庢摼偟傑偡丅
*
* @return 儕僜乕僗僶儞僪儖偺僾儗僼傿僢僋僗
* @since 3.2
*
* @uml.property name="bundlePrefix"
*/
private String getBundlePrefix() {
return this.bundlePrefix;
}
/**
* 傾僾儕働乕僔儑儞偛偲偺儕僜乕僗僶儞僪儖偺廤崌傪愝掕偟傑偡丅
*
* @param applicationBundles
* 傾僾儕働乕僔儑儞偛偲偺儕僜乕僗僶儞僪儖偺廤崌
* @since 3.2
*/
private void setApplicationBundles(Map applicationBundles) {
this.bundles = applicationBundles;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -