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

📄 accountpool.java

📁 主要考察的是资源池的设计和实现
💻 JAVA
字号:
package ServerImpl;
import Bank.UserNotExitsException;


public class AccountPool extends ResourcePool {

    private AccountPool(){};
    static AccountPool instance=null;
    public static AccountPool getInstance(){
        if(instance==null) instance=new AccountPool();
        return instance;
    }
    
    Object create(String id) throws UserNotExitsException,Exception {       
        return AccountImpl.getAccount(id);      
    }

    Resource getResourceObject(Object o) {   
        return new Resource(((AccountImpl) o).getID(),System.currentTimeMillis());   
    }

    int getMaxSize() {        
        return ServerConfigure.GetPoolSize();
    }

    Strategy getStrategy() {
        Class c;
        try {
            c = Class.forName("Server."+ServerConfigure.GetStrategyType()+"Strategy");
            return (Strategy)c.newInstance();
        } catch (Exception e) {
            e.printStackTrace();
        }   
        return null;
    }

    void expire(Object o) throws Exception{
        AccountImpl servant=(AccountImpl)o;
        servant.updata();
        ServerConfigure.getPOA().deactivate_object(ServerConfigure.getPOA().servant_to_id(servant));       
    }
}

⌨️ 快捷键说明

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