JAVAME的RMS通用持久化框架 - 编程入门网
作者 佚名技术
来源 NET编程
浏览
发布时间 2012-06-16
exe.printStackTrace(); 94 LogManager.error ("RMSUtil.deleteObject(),ser = " + ser + ",exe = " + exe); 95 return false; 96 } 97 } 98 99 /** 100 * 从某个数据库里面读取某个对象 101 * @param id 此对象的ID 102 * @param clz 对应的类 103 * @return 此对象,如果发生任何异常,则返回null 104 */ 105 public static Serializable readObject(int id, Class clz) { 106 RecordStore rs = null; 107 try { 108 rs = getRecordStore(clz.getName()); 109 byte[] data = rs.getRecord(id); 110 Serializable ser = (Serializable) clz.newInstance(); 111 ser.unSerialize(data); 112 ser.setId(id); 113 return ser; 114 } catch (Exception exe) { 115 //如果读取对象失败,则可能是有东西被删了 或者版本不一样,此时就应该删掉 116 exe.printStackTrace(); 117 LogManager.error("RMSUtil.readObject (),id = " + id + ",Class = " + clz + ",exe= " + exe); 118 if (rs != null) { 119 try { 120 rs.deleteRecord(id); 121 } catch (Exception ex) { 122 ex.printStackTrace (); 123 LogManager.error ("RMSUtil.readObject$rs.deleteRecord(id),id = " + id + ",exe = " + ex); 124 } 125 } 126 return null; 127 } 128 } 129 130 /** 131 * 得到某个类存在RMS里面的总数,这样便于分段取 132 * @param cls 类名 133 * @return 有效记录总数 134 */ 135 public static int getStoreSize(Class cls) { 136 try { 137 RecordStore rs = getRecordStore (cls.getName()); 138 return rs.getNumRecords(); 139 } catch (Exception exe) { 140 exe.printStackTrace(); 141 LogManager.error("RMSUtil.getStoreSize (),Class = " + cls + ",exe = " + exe); 142 return -1; 143 } 144 } 145 146 /** 147 * 列出某个类的对象的集合,最多取多少个对象 148 * @param cls 类名 149 * @param from 从第几个开始取 150 * @param maxSize 最多取多少个对象 151 * @return 取到的列表 152 */ 153 public static Vector listObjects(Class cls, int from, int maxSize) { 154 System.out.println("class="+cls); 155 if (from < 0 || maxSize < 1 |
凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢! |
你可能对下面的文章感兴趣
关于JAVAME的RMS通用持久化框架 - 编程入门网的所有评论