commentmgr.java

来自「一个用java编写的功能强大的OA系统」· Java 代码 · 共 148 行

JAVA
148
字号
package cn.js.fan.module.cms;import java.util.Vector;import org.apache.log4j.Logger;import java.util.Iterator;import cn.js.fan.web.Global;import cn.js.fan.db.ResultIterator;import cn.js.fan.db.RMConn;import cn.js.fan.db.ResultRecord;import javax.servlet.http.HttpServletRequest;import cn.js.fan.util.ErrMsgException;import java.sql.ResultSet;import cn.js.fan.db.Conn;import cn.js.fan.cache.jcs.*;import cn.js.fan.base.IPrivilege;public class CommentMgr {    String connname = "";    String cachePrix = "cmt";    String cachePrixList = "cmt_list";    RMCache rmCache;    Logger logger = Logger.getLogger(CommentMgr.class.getName());    public CommentMgr() {        rmCache = RMCache.getInstance();        connname = Global.defaultDB;        if (connname.equals(""))            logger.info("CommentMgr:默认数据库名为空!");    }        public Iterator getList(int doc_id) {        Vector list  = (Vector) rmCache.get(this.                cachePrixList + doc_id);        Iterator listids = null;        if (list!=null)            listids = list.iterator();        if (listids == null) {            String sql = "select id from cms_comment where doc_id=" + doc_id +                         " order by add_date";            Conn conn = new Conn(connname);            ResultSet rs = null;            try {                rs = conn.executeQuery(sql);                if (rs!=null) {                    Vector v = new Vector();                    while (rs.next()) {                        int id = rs.getInt(1);                        v.addElement("" + id);                    }                    rmCache.put(cachePrixList + doc_id, v);                    listids = v.iterator();                }            } catch (Exception e) {                logger.error(e.getMessage());            }            finally {                if (conn!=null) {                    conn.close(); conn = null;                }            }        }        Vector v = new Vector();        while (listids.hasNext()) {            String id = (String) listids.next();            int intid = Integer.parseInt(id);            v.addElement(getComment(intid));        }        return v.iterator();    }    public Comment getComment(int id) {        Comment cmt = (Comment) rmCache.get(cachePrix + id);        if (cmt == null) {            cmt = new Comment(id);            try {                rmCache.put(cachePrix + id, cmt);            } catch (Exception e) {                logger.error("getComment:" + e.getMessage());            }            return cmt;        } else {            cmt.renew();            return cmt;        }    }    public boolean insert(HttpServletRequest request) throws ErrMsgException {        CommentCheck cc = new CommentCheck();        cc.checkInsert(request);        Comment cmt = new Comment();        boolean re = cmt.insert(cc.getDocId(), cc.getNick(), cc.getLink(),                                cc.getContent(), cc.getIp());        if (re) {                        try {                rmCache.remove(this.cachePrixList + cc.getDocId());            } catch (Exception e) {                logger.error(e.getMessage());            }        }        return re;    }    public boolean del(HttpServletRequest request, IPrivilege privilege) throws            ErrMsgException {        CommentCheck cc = new CommentCheck();        cc.checkDel(request);        Comment cmt = getComment(cc.getId());        boolean re = cmt.del(cc.getId());        if (re) {                        try {                rmCache.remove(cachePrixList + cmt.getDocId());                rmCache.remove(cachePrix + cc.getId());            } catch (Exception e) {                logger.error(e.getMessage());            }        }        return re;    }        public void delAll(HttpServletRequest request, IPrivilege privilege) throws            ErrMsgException {        CommentCheck cc = new CommentCheck();        cc.init();        cc.chkDocId(request);        cc.report();        Iterator ir = getList(cc.getDocId());        Comment cmt = null;                try {            while (ir.hasNext()) {                cmt = (Comment) ir.next();                cmt.del(cmt.getId());                rmCache.remove(this.cachePrix + cc.getId());            }            rmCache.remove(this.cachePrixList + cc.getDocId());        } catch (Exception e) {            logger.error(e.getMessage());        }    }}

⌨️ 快捷键说明

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