📄 boardrenderdb.java
字号:
package com.redmoon.forum;
import cn.js.fan.base.ObjectDb;
import cn.js.fan.db.PrimaryKey;
import cn.js.fan.db.Conn;
import java.sql.PreparedStatement;
import java.sql.SQLException;
import java.sql.ResultSet;
import com.redmoon.forum.plugin.base.IPluginRender;
import com.redmoon.forum.plugin.RenderMgr;
public class BoardRenderDb extends ObjectDb {
public BoardRenderDb() {
init();
}
public BoardRenderDb(String boardCode) {
this.boardCode = boardCode;
init();
load();
}
public boolean setBoardRender(String boardCode, String renderCode) {
BoardRenderDb br = getBoardRenderDb(boardCode);
if (br.isLoaded()) {
// logger.info("setBoardRender: boardCode=" + boardCode + " loaded=" + br.isLoaded());
br.setRenderCode(renderCode);
return br.save();
}
else {
br.setBoardCode(boardCode);
br.setRenderCode(renderCode);
return br.create();
}
}
public BoardRenderDb getBoardRenderDb(String boardCode) {
return (BoardRenderDb)getObjectDb(boardCode);
}
public ObjectDb getObjectDb(Object primaryKeyValue) {
BoardRenderCache fc = new BoardRenderCache(this);
primaryKey.setValue(primaryKeyValue);
return (BoardRenderDb)fc.getObjectDb(primaryKey);
}
public boolean del() {
int rowcount = 0;
Conn conn = null;
try {
conn = new Conn(connname);
PreparedStatement ps = conn.prepareStatement(this.QUERY_DEL);
ps.setString(1, boardCode);
rowcount = conn.executePreUpdate();
BoardRenderCache uc = new BoardRenderCache(this);
primaryKey.setValue(boardCode);
uc.refreshDel(primaryKey);
} catch (SQLException e) {
logger.error(e.getMessage());
} finally {
if (conn != null) {
conn.close();
conn = null;
}
}
return rowcount>0? true:false;
}
public int getObjectCount(String sql) {
return 0;
}
public ObjectDb getObjectRaw(PrimaryKey pk) {
return new BoardRenderDb(pk.getStrValue());
}
public void setQueryCreate() {
this.QUERY_CREATE = "insert into sq_boardrender (boardCode,renderCode) values (?,?)";
}
public void setQuerySave() {
this.QUERY_SAVE =
"update sq_boardrender set renderCode=? where boardCode=?";
}
public void setQueryDel() {
this.QUERY_DEL = "delete from sq_boardrender where boardCode=?";
}
public void setQueryLoad() {
this.QUERY_LOAD =
"select renderCode from sq_boardrender where boardCode=?";
}
public void setQueryList() {
this.QUERY_LIST = "select boardCode,renderCode from sq_boardrender";
}
public boolean create() {
int rowcount = 0;
Conn conn = null;
try {
conn = new Conn(connname);
PreparedStatement ps = conn.prepareStatement(this.QUERY_CREATE);
ps.setString(1, boardCode);
ps.setString(2, renderCode);
rowcount = conn.executePreUpdate();
} catch (SQLException e) {
logger.error(e.getMessage());
} finally {
if (conn != null) {
conn.close();
conn = null;
}
}
return rowcount>0? true:false;
}
public boolean save() {
int rowcount = 0;
Conn conn = null;
try {
conn = new Conn(connname);
PreparedStatement ps = conn.prepareStatement(this.QUERY_SAVE);
ps.setString(1, renderCode);
ps.setString(2, boardCode);
rowcount = conn.executePreUpdate();
BoardRenderCache uc = new BoardRenderCache(this);
primaryKey.setValue(boardCode);
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.setString(1, boardCode);
primaryKey.setValue(boardCode);
rs = conn.executePreQuery();
if (rs.next()) {
renderCode = rs.getString(1);
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("boardCode", PrimaryKey.TYPE_STRING);
}
public void setBoardCode(String boardCode) {
this.boardCode = boardCode;
}
public void setRenderCode(String renderCode) {
this.renderCode = renderCode;
}
public String getBoardCode() {
return boardCode;
}
public String getRenderCode() {
return renderCode;
}
public IPluginRender getRender() {
RenderMgr rm = new RenderMgr();
// logger.info("getRender:" + renderCode);
return rm.getRenderUnit(renderCode).getRender();
}
private String boardCode;
private String renderCode = "default";
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -