⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 daofactory.java

📁 本项目为电子留言系统
💻 JAVA
字号:
package org.yeeku.factory;

import org.yeeku.dao.*;
import org.yeeku.dao.impl.*;

import org.dom4j.*;
import org.dom4j.io.*;

import java.util.*;
import java.io.*;
/**
 * @author  yeeku.H.lee kongyeeku@163.com
 * @version  1.0
 * <br>Copyright (C), 2005-2008, yeeku.H.Lee
 * <br>This program is protected by copyright laws.
 * <br>Program Name:
 * <br>Date: 
 */
public class DaoFactory
{
    private Map<String , Object> daoMap = new HashMap<String , Object>(); 

    private static DaoFactory df;
	
    private DaoFactory(String path)throws Exception
    {
        Document doc = new SAXReader().read(new File(path + "\\daoContext.xml"));
        Element root = doc.getRootElement();
        List el =  root.elements();
        for (Iterator it = el.iterator();it.hasNext() ; )
        {
            Element em = (Element)it.next();
            String id = em.attributeValue("id");
            String impl = em.attributeValue("class");
            Class implClazz = Class.forName(impl);
            Object obj = implClazz.newInstance();
            daoMap.put(id , obj);            
        }
    }

    public static DaoFactory instance(String path)throws Exception
    {
        if (df == null)
        {
            df = new DaoFactory(path); 
        }
        return df;
    }

    public Object getDao(String id)
    {
        return daoMap.get(id);
    }
}

⌨️ 快捷键说明

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