bizfactory.java

来自「达内Java培训实训项目ECPORT原码。 包括逐步优化的四个版本: 简单工」· Java 代码 · 共 57 行

JAVA
57
字号
package com.royee.ecport.biz;

import java.io.IOException;
import java.io.InputStream;
import java.util.HashMap;
import java.util.Map;
import java.util.Properties;
import java.util.Set;


@SuppressWarnings("unchecked")
public class BizFactory {
	private static String BIZ_CONFIG_FILE = "/biz.properties";
	private static final Map<String, CommonBiz> bizs = new HashMap<String, CommonBiz>();
	/**
	 * 从配置文件注册各Dao实例
	 */
	static {
		Properties p = new Properties();
		InputStream is = BizFactory.class.getResourceAsStream(
				BIZ_CONFIG_FILE);
		try {
			p.load(is);
			Set<Object> keys = p.keySet();
			for (Object key : keys) {
				bizs.put((String) key,
						(CommonBiz) (Class.forName(
								p.getProperty((String) key)
							).newInstance()));
			}

		} catch (IOException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		} catch (InstantiationException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		} catch (IllegalAccessException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		} catch (ClassNotFoundException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}

	}
	
	/**
	 * 获取Biz
	 * @param key	配置文件中注册的key
	 * @return
	 */
	public static CommonBiz getBiz(String key){
		return bizs.get(key);
	}
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?