blogdb.java
来自「cwbbs 云网论坛源码」· Java 代码 · 共 361 行
JAVA
361 行
package com.redmoon.blog;import java.sql.*;import java.util.*;import java.util.Date;import cn.js.fan.base.*;import cn.js.fan.db.*;import cn.js.fan.util.*;public class BlogDb extends ObjectDb { public static final int ID = 1; private int id = ID; private int todayCount = 0; private int userCount = 0; private int topicCount = 0; private int postCount = 0; private int yestodayCount = 0; private long newBlogId; public BlogDb() { id = ID; init(); load(); } public long[] getNewBlogMsgs(int n) { BlogCache fc = new BlogCache(this); return fc.getNewBlogMsgs(n); } public long[] getHotBlogMsgs(int n) { BlogCache fc = new BlogCache(this); return fc.getHotBlogMsgs(n); } public long[] getPostRank(int n) { BlogCache fc = new BlogCache(this); return fc.getPostRank(n); } public long[] getReplyRank(int n) { BlogCache fc = new BlogCache(this); return fc.getReplyRank(n); } public long[] getNewBlogs(int n) { BlogCache fc = new BlogCache(this); return fc.getNewBlogs(n); } public long[] getNewUpdateBlogs(int n) { BlogCache fc = new BlogCache(this); return fc.getNewUpdateBlogs(n); } public String[] getCommendBlogs(int n) { BlogCache fc = new BlogCache(this); return fc.getCommendBlogs(n); } public int[] getNewPhotos(int n) { BlogCache fc = new BlogCache(this); return fc.getNewPhotos(n); } public long[] getBlogMsgsOfKind(int n, String kind) { BlogCache fc = new BlogCache(this); return fc.getBlogMsgsOfKind(n, kind); } public ObjectDb getObjectDb(Object primaryKeyValue) { BlogCache fc = new BlogCache(this); PrimaryKey pk = (PrimaryKey)primaryKey.clone(); pk.setValue(primaryKeyValue); return (BlogDb)fc.getObjectDb(pk); } public static BlogDb getInstance() { BlogDb blogDb = new BlogDb(); blogDb = blogDb.getBlogDb(); return blogDb; } public BlogDb getBlogDb() { return (BlogDb)getObjectDb(new Integer(ID)); } public boolean del() { return false; } public int getObjectCount(String sql) { return 0; } public ObjectDb getObjectRaw(PrimaryKey pk) { return new BlogDb(); } public void setQueryCreate() { } public void setQuerySave() { this.QUERY_SAVE = "update blog set blogCount=?,newBlogId=?, todayCount=?, topicCount=?, postCount=?, yestodayCount=?, todayDate=?,star=?,homeClasses=?,recommandBlogs=? where id=?"; } public void setQueryDel() { } public void setQueryLoad() { this.QUERY_LOAD = "select blogCount, newBlogId, todayCount, topicCount, postCount, yestodayCount, todayDate,star,homeClasses,recommandBlogs from blog where id=?"; } public void setQueryList() { } public boolean save() { int rowcount = 0; Conn conn = null; try { conn = new Conn(connname); PreparedStatement ps = conn.prepareStatement(this.QUERY_SAVE); ps.setInt(1, blogCount); ps.setLong(2, newBlogId); ps.setInt(3, todayCount); ps.setInt(4, topicCount); ps.setInt(5, postCount); ps.setInt(6, yestodayCount); ps.setString(7, DateUtil.toLongString(todayDate)); ps.setString(8, star); ps.setString(9, homeClasses); ps.setString(10, recommandBlogs); ps.setInt(11, id); rowcount = conn.executePreUpdate(); BlogCache uc = new BlogCache(this); primaryKey.setValue(new Integer(this.id)); uc.refreshSave(primaryKey); } catch (SQLException e) { logger.error(e.getMessage()); } finally { if (conn != null) { conn.close(); conn = null; } } return rowcount>0? true:false; } public void load() { ResultSet rs = null; Conn conn = new Conn(connname); try { PreparedStatement ps = conn.prepareStatement(this.QUERY_LOAD); ps.setInt(1, id); primaryKey.setValue(new Integer(id)); rs = conn.executePreQuery(); if (rs.next()) { blogCount = rs.getInt(1); newBlogId = rs.getLong(2); todayCount = rs.getInt(3); topicCount = rs.getInt(4); postCount = rs.getInt(5); yestodayCount = rs.getInt(6); todayDate = DateUtil.parse(rs.getString(7)); star = StrUtil.getNullString(rs.getString(8)); homeClasses = rs.getString(9); recommandBlogs = StrUtil.getNullStr(rs.getString(10)); loaded = true; } } catch (SQLException e) { logger.error("load:" + e.getMessage()); } finally { if (conn!=null) { conn.close(); conn = null; } } } public Object[] getObjectBlock(String query, int startIndex) { return null; } public void setPrimaryKey() { primaryKey = new PrimaryKey("id", PrimaryKey.TYPE_INT); } public void setId(int id) { this.id = id; } public void setTodayCount(int todayCount) { this.todayCount = todayCount; } public void setUserCount(int userCount) { this.userCount = userCount; } public void setTopicCount(int topicCount) { this.topicCount = topicCount; } public void setPostCount(int postCount) { this.postCount = postCount; } public void setYestodayCount(int yestodayCount) { this.yestodayCount = yestodayCount; } public int getTodayCount() { return todayCount; } public int getUserCount() { return userCount; } public int getTopicCount() { return topicCount; } public int getPostCount() { return postCount; } public int getYestodayCount() { return yestodayCount; } public Date getTodayDate() { return todayDate; } public int getBlogCount() { return blogCount; } public long getNewBlogId() { return newBlogId; } public String getStar() { return star; } public String getHomeClasses() { return homeClasses; } public String getRecommandBlogs() { return recommandBlogs; } public void setStatics(boolean isAddNew) { Calendar todaydb = Calendar.getInstance(); if (todayDate!=null) todaydb.setTime(todayDate); Calendar today = Calendar.getInstance(); if (DateUtil.datediff(todaydb, today) == 0) { setTodayCount(todayCount + 1); } else { setYestodayCount(todayCount); todayCount = 1; todayDate = today.getTime(); } if (isAddNew) setTopicCount(topicCount + 1); setPostCount(postCount + 1); save(); } public void reload() { BlogCache uc = new BlogCache(this); primaryKey.setValue(new Integer(this.id)); uc.refreshSave(primaryKey); } public void setBlogCount(int blogCount) { this.blogCount = blogCount; } public void setNewBlogId(long newBlogId) { this.newBlogId = newBlogId; } public void setStar(String star) { this.star = star; } public void setHomeClasses(String homeClasses) { this.homeClasses = homeClasses; } public void setRecommandBlogs(String recommandBlogs) { this.recommandBlogs = recommandBlogs; } public Vector getAllHomeClasses() { Vector v = new Vector(); if (homeClasses!=null && !homeClasses.equals("")) { Leaf lf = new Leaf(); homeClasses = homeClasses.replaceAll(",", ","); String[] ids = homeClasses.split("\\,"); int len = ids.length; for (int i = 0; i < len; i++) { String str = ids[i].trim(); if (lf==null) lf = new Leaf(); lf = lf.getLeaf(str); if (lf != null && lf.isLoaded()) v.addElement(lf); } } return v; } public Vector getAllRecommandBlogs() { Vector v = new Vector(); if (recommandBlogs!=null && !recommandBlogs.equals("")) { UserConfigDb ucd = new UserConfigDb(); recommandBlogs = recommandBlogs.replaceAll(",", ","); String[] ids = recommandBlogs.split("\\,"); int len = ids.length; for (int i = 0; i < len; i++) { String id = ids[i].trim(); ucd = ucd.getUserConfigDb(StrUtil.toInt(id)); if (ucd != null && ucd.isLoaded()) v.addElement(ucd); else ucd = new UserConfigDb(); } } return v; } private Date todayDate; private int blogCount; private String star; private String homeClasses; private String recommandBlogs;}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?