一、调用属性文件属性的代码:
String url=SmsProperties.get("sms_address_frontend");//取地址如“sms_address_frontend=http://172.16.1.9:8280/sms_frontend/services/smsSenderWebService”
String smsServer = SmsProperties.get("sms_server_name");//发送短信的服务账号(这里可以取中文属性值,在下面转码)
String ss="";
try {
ss = new String(smsServer.getBytes("ISO8859_1"),"utf-8");
} catch (UnsupportedEncodingException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}//
//
二、SmsProperties.java文件代码为
package com.skylink.common.config;
/**
* WINTV-BOSS相关配置
*/
import java.io.DataOutputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.UnsupportedEncodingException;
import java.net.URL;
import java.util.Properties;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
public class SmsProperties {
private static Log log = LogFactory.getLog( SmsProperties.class );
private static String FILE_NAME = "/sms_config.properties"; //文件名
private static final Properties conf_PROPERTIES;
static
{
conf_PROPERTIES = new Properties();
InputStream stream = SmsProperties.class.getResourceAsStream(FILE_NAME);
if ( stream == null ) {
log.warn( FILE_NAME + " not found" );
}
else {
try {
conf_PROPERTIES.load( stream );
log.info( "loaded properties from resource " + FILE_NAME + ": " + conf_PROPERTIES );
}
catch ( Exception e ) {
log.error( "problem loading properties from " + FILE_NAME );
}
finally {
try {
stream.close();
}
catch ( IOException ioe ) {
log.error( "could not close stream on " + FILE_NAME, ioe );
}
}
}
}
public static Properties getProperties()
{
return conf_PROPERTIES;
}
public static void save()
{
try {
URL url = SmsProperties.class.getResource( FILE_NAME);
String filePath = java.net.URLDecoder.decode( url.getFile(), "utf-8" );
log.info( "saving properties to :" + filePath );
FileOutputStream fout = new FileOutputStream( filePath );
DataOutputStream out = new DataOutputStream( fout );
conf_PROPERTIES.store( out, "系统保存" );
}
catch ( FileNotFoundException ex ) {
log.warn( ex.getMessage() );
}
catch ( UnsupportedEncodingException ex ) {
log.warn( ex.getMessage() );
}
catch ( IOException ex ) {
log.warn( ex.getMessage() );
}
}
public static String get( String key )
{
return conf_PROPERTIES.getProperty( key );
}
public static int getIntValue( String key )
{
return getIntValue( key, 0 );
}
public static int getIntValue( String key, int defaultValue )
{
String str = conf_PROPERTIES.getProperty( key );
int value = 0;
try {
value = Integer.parseInt( str );
}
catch ( NumberFormatException ex ) {
value = defaultValue;
}
return value;
}
public static void main( String[] args )
{
//String tmpAry[][] = getGxtvProductAry();
}
}
三、属性文件 sms_config.properties的代码为:
#短信服务地址
webroot_langci=http://172.16.1.9:8280/skylink_sms_lc
#接口webservice
sms_address_langci=http://172.16.1.9:8280/skylink_sms_lc/services/sms/smsService
#短信前置机webservice
sms_address_frontend=http://172.16.1.9:8280/sms_frontend/services/smsSenderWebService
#发送短信的服务账号
sms_server_name=开发