📄 msgcache.java
字号:
if (count != null) { return count.intValue(); } else { int docCount = 0; Conn conn = new Conn(connname); ResultSet rs = null; try { rs = conn.executeQuery(query); if (rs.next()) docCount = rs.getInt(1); } catch (SQLException sqle) { sqle.printStackTrace(); } finally { if (rs != null) { try { rs.close(); } catch (Exception e) { e.printStackTrace(); } rs = null; } if (conn != null) { conn.close(); conn = null; } } try { rmCache.putInGroup(query, COUNT_GROUP_NAME + boardcode, new Integer(docCount)); } catch (Exception e) { Logger.getLogger(getClass()).error(e.getMessage()); } return docCount; } } public long getMsgCount(String sql, String boardcode, long rootid) { String query = SQLFilter.getCountSql(sql); if (!SecurityUtil.isValidSql(query)) return -1; Long count = null; try { count = (Long) rmCache.getFromGroup(query, COUNT_GROUP_NAME + boardcode + rootid); } catch (Exception e) { Logger.getLogger(getClass()).error(e.getMessage()); } if (count != null) { return count.longValue(); } else { long docCount = 0; Conn conn = new Conn(connname); ResultSet rs = null; try { rs = conn.executeQuery(query); if (rs.next()) docCount = rs.getLong(1); } catch (SQLException sqle) { sqle.printStackTrace(); } finally { if (rs != null) { try { rs.close(); } catch (Exception e) { e.printStackTrace(); } rs = null; } if (conn != null) { conn.close(); conn = null; } } try { rmCache.putInGroup(query, COUNT_GROUP_NAME + boardcode + rootid, new Long(docCount)); } catch (Exception e) { Logger.getLogger(getClass()).getLogger(getClass()).error(e.getMessage()); } return docCount; } } public void removeFromCache(long id) { try { rmCache.remove(cachePrix + id); } catch (Exception e) { Logger.getLogger(getClass()).error(e.getMessage()); } } public void removeFromCacheThreadsBlock(String boardcode) { try { rmCache.invalidateGroup(THREADBLOCKCACHEPRIX + boardcode); } catch (Exception e) { Logger.getLogger(getClass()).error(e.getMessage()); } } public void removeFromCacheMsgBlock(String boardcode, long rootid) { try { rmCache.invalidateGroup(MSGBLOCKCACHEPRIX + boardcode + rootid); } catch (Exception e) { Logger.getLogger(getClass()).error(e.getMessage()); } } public void removeFromCacheThreadsCount(String boardcode) { try { rmCache.invalidateGroup(COUNT_GROUP_NAME + boardcode); } catch (Exception e) { Logger.getLogger(getClass()).error(e.getMessage()); } } public void removeFromCacheMsgCount(String boardcode, long rootid) { try { rmCache.invalidateGroup(COUNT_GROUP_NAME + boardcode + rootid); } catch (Exception e) { Logger.getLogger(getClass()).error(e.getMessage()); } } public void refreshAdd(String boardcode, long blogId, boolean isBlog, String blogUserDir) { removeFromCacheThreadsBlock(boardcode); removeFromCacheThreadsCount(boardcode); if (isBlog) { removeFromCacheThreadsBlock(MsgDb.getVirtualBoardcodeOfBlog( blogId, blogUserDir)); removeFromCacheThreadsCount(MsgDb.getVirtualBoardcodeOfBlog( blogId, blogUserDir)); removeFromCacheThreadsBlock(MsgDb.getVirtualBoardcodeOfBlog( blogId, "")); removeFromCacheThreadsCount(MsgDb.getVirtualBoardcodeOfBlog( blogId, "")); } } public void refreshChangeBoard(long id, String boardcode, String newboardcode) { removeFromCacheThreadsBlock(boardcode); removeFromCacheThreadsCount(boardcode); removeFromCacheThreadsBlock(newboardcode); removeFromCacheThreadsCount(newboardcode); removeFromCache(id); } public void refreshReply(String boardcode, long rootid) { removeFromCacheThreadsBlock(boardcode); removeFromCacheMsgBlock(boardcode, rootid); removeFromCacheMsgCount(boardcode, rootid); } public void refreshUpdate(long id) { removeFromCache(id); } public void refreshUpdate(long id, long blogId, boolean isBlog, String blogUserDir, String oldBlogUserDir) { removeFromCacheThreadsBlock(MsgDb.getVirtualBoardcodeOfBlog( blogId, blogUserDir)); removeFromCacheThreadsCount(MsgDb.getVirtualBoardcodeOfBlog( blogId, blogUserDir)); removeFromCacheThreadsBlock(MsgDb.getVirtualBoardcodeOfBlog( blogId, oldBlogUserDir)); removeFromCacheThreadsCount(MsgDb.getVirtualBoardcodeOfBlog( blogId, oldBlogUserDir)); removeFromCacheThreadsBlock(MsgDb.getVirtualBoardcodeOfBlog( blogId, "")); removeFromCacheThreadsCount(MsgDb.getVirtualBoardcodeOfBlog( blogId, "")); refreshUpdate(id); } public void refreshThreadList(String boardcode) { removeFromCacheThreadsBlock(boardcode); removeFromCacheThreadsCount(boardcode); } public void refreshMsgAndList(String boardcode, long id) { removeFromCache(id); removeFromCacheThreadsBlock(boardcode); removeFromCacheThreadsCount(boardcode); } public void refreshDelRoot(String boardcode, long id, long blogId, boolean isBlog, String blogUserDir) { removeFromCache(id); removeFromCacheThreadsBlock(boardcode); removeFromCacheThreadsCount(boardcode); removeFromCacheMsgBlock(boardcode, id); removeFromCacheMsgCount(boardcode, id); if (isBlog) { removeFromCacheThreadsBlock(MsgDb.getVirtualBoardcodeOfBlog(blogId, blogUserDir)); removeFromCacheThreadsCount(MsgDb.getVirtualBoardcodeOfBlog(blogId, blogUserDir)); removeFromCacheThreadsBlock(MsgDb.getVirtualBoardcodeOfBlog( blogId, "")); removeFromCacheThreadsCount(MsgDb.getVirtualBoardcodeOfBlog( blogId, "")); } } public void refreshDelReply(String boardcode, long rootid, long id) { removeFromCache(id); removeFromCacheMsgBlock(boardcode, rootid); removeFromCacheMsgCount(boardcode, rootid); }}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -