任务需求:
1、对plugin_id和plugin_sid所确定唯一数据进行分类
2、一个plugin_id有多个plugin_sid
3、初始化的时候从数据库读入,以后在内存中实现通过plugin_id和plugin_sid确定其分类id
源代码:
从数据库读入所有记录进行初始化
String sql = "select plugin_id, sid , class_id from ossim.plugin_sid order by plugin_id, sid"; System.out.println(sql); ResultSet rs = stmt.executeQuery(sql); while(rs.next()){ initHashMap(rs.getInt("plugin_id"),rs.getInt("sid"),rs.getInt("class_id")); }
创建双层HashMap
HashMap PluginGroup=new HashMap(); HashMap pluginSid_ClassID; public void initHashMap(int pid,int sid,int cid){ if((pluginSid_ClassID=(HashMap)PluginGroup.get(pid))!=null){ /*说明已经存在关于此plugin_id的数组,直接插入*/ pluginSid_ClassID.put(sid, cid); }else{ /*第一次创建*/ //nodes=new Plugin_sidGroupbyPlugin_id(); pluginSid_ClassID=new HashMap(); pluginSid_ClassID.put(sid, cid); PluginGroup.put(pid, pluginSid_ClassID); } }
通过plguin_id和plugin_sid确定分类id
public int getClass_id(int plugin_id,int plugin_sid){ Integer class_id=0; if((pluginSid_ClassID=(HashMap)PluginGroup.get(plugin_id))!=null){ if((class_id=(Integer)pluginSid_ClassID.get(plugin_sid))!=null) return class_id.intValue(); } return 0; }
本文介绍了一种插件分类管理系统的设计与实现。系统采用双层HashMap结构来存储和快速检索插件分类信息,其中包括plugin_id、plugin_sid及对应的分类id。初始化阶段从数据库加载所有插件分类信息,并提供接口用于后续通过插件标识快速获取分类。
413

被折叠的 条评论
为什么被折叠?



