beanfactory.java

来自「论坛软件系统亦称电子公告板(BBS)系统」· Java 代码 · 共 40 行

JAVA
40
字号
package cn.jsprun.utils;

import java.util.HashMap;
import java.util.Map;

import javax.xml.parsers.DocumentBuilderFactory;

import org.w3c.dom.Document;
import org.w3c.dom.Element;
import org.w3c.dom.NodeList;

public final class BeanFactory {
	private static Map<String,Object> map = null;
	static
	{
		load();
	}
	public static Object getBean(String beanName) {
		return map.get(beanName);
	}
	public static void load() {
		map = new HashMap<String,Object>();
		try {
			Document doc = DocumentBuilderFactory.newInstance().newDocumentBuilder().parse(Thread.currentThread().getContextClassLoader().getResource("beanfactory.xml").getPath());
			NodeList daos = doc.getElementsByTagName("bean");
			Element e=null;
			int length=daos.getLength();
			for (int i = 0; i < length; i++) {
				e = (Element) daos.item(i);
				map.put(e.getAttribute("name"), Class.forName(e.getAttribute("class")).newInstance());
			}
			e=null;
			daos=null;
			doc=null;
		} catch (Exception ex) {
			ex.printStackTrace();
		}
	}
}

⌨️ 快捷键说明

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