SmartFrameworkjava
1.加入第三方開源jar數據庫
2.編寫smart.properties配置文件( 數據庫鏈接和路徑的配置 base_package:基礎包名,/WEB-INF/view/:jsp基礎路徑,asset_path:靜態文件基礎路徑 )app
3.加載smart.properties配置項到內存
3.1 ConfigConstant.java提供Properties文件的key相關配置常量jsp
package org.smart4j.framework; /** * 提供相關配置項常量 * @author tianshuo * @since 1.1 */ public interface ConfigConstant { String CONFIG_FILE = "smart.properties"; String JDBC_DRIVER ="smart.framework.jdbc.driver"; String JDBC_URL ="smart.framework.jdbc.url"; String JDBC_USERNAME = "smart.framework.jdbc.username"; String JDBC_PASSWORD="smart.framework.jdbc.password"; String APP_BASE_PACKAGE="smart.framework.app.base_package"; String APP_JSP_PATH="smart.framework.app.jsp_path"; String APP_ASSET_PATH="smart.framework.app.asset_path"; }
3.2 PropsUtil.java簡化Properties文件讀取的工具類工具
package org.smart4j.framework.util; import java.io.IOException; import java.io.InputStream; import java.util.Properties; /** * Properties文件讀取工具類 * @author Admin * */ public class PropsUtil { /** * 加載properties配置文件工具類 * @param fileConfig * @return */ public static Properties loadProps(String fileConfig){ Properties properties = new Properties(); try { InputStream in = Object.class.getResourceAsStream("/" + fileConfig); properties.load(in); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } return properties; } /** * 根據傳入的properties文件對象的key得到value * @param properties * @param key * @return value */ public static String getString(Properties properties,String key){ String value = properties.getProperty(key); return value; } /** * 根據傳入的properties文件對象的key得到value,提供可選的路徑配置項pathCustom * @param properties * @param key * @param pathCustom 自定義配置項,傳入null默認加載配置文件key * @return value */ public static String getString(Properties properties,String key,String pathCustom){ if( pathCustom != null ){ return pathCustom; }else{ String value = properties.getProperty(key); return value; } } }
3.3 ConfigHelper.java讀取Properties文件的Valueurl
package org.smart4j.framework.helper; import java.util.Properties; import org.smart4j.framework.ConfigConstant; import org.smart4j.framework.util.PropsUtil; /** * 屬性文件助手類 * @author * */ public final class ConfigHelper { private static final Properties CONFIG_PROPS = PropsUtil.loadProps(ConfigConstant.CONFIG_FILE); /** * 獲取JDBC用戶名 * @return */ public static String getJdbcUsername(){ return PropsUtil.getString(CONFIG_PROPS, ConfigConstant.JDBC_USERNAME); } /** * 獲取JDBC密碼 * @return */ public static String getJdbcPassword(){ return PropsUtil.getString(CONFIG_PROPS, ConfigConstant.JDBC_PASSWORD); } /** * 獲取應用基礎包名 * @return */ public static String getAppBasePackage(){ return PropsUtil.getString(CONFIG_PROPS, ConfigConstant.APP_BASE_PACKAGE); } /** * 獲取應用jsp基礎路徑 * @return */ public static String getAppJspPath(){ return PropsUtil.getString(CONFIG_PROPS, ConfigConstant.APP_JSP_PATH,"/WEB-INF/view"); } /** * 獲取應用靜態資源基礎路徑 * @return */ public static String getAppAssetPath(){ return PropsUtil.getString(CONFIG_PROPS, ConfigConstant.APP_ASSET_PATH,"/asset/"); } //Test public static void main(String[] args) { System.out.println(ConfigHelper.getJdbcUsername()); System.out.println(ConfigHelper.getJdbcPassword()); System.out.println(ConfigHelper.getAppBasePackage()); System.out.println(ConfigHelper.getAppJspPath()); System.out.println(ConfigHelper.getAppAssetPath()); } }
---------------------------------------summarize(總結):至此數據庫配置和路徑配置已經讀取完畢-------------------------------------spa