📄 simpledbtable.java
字号:
package jm.framework.util;
import java.util.Iterator;
import java.util.Map;
import jm.dbo.JMDBOConfig;
import jm.dbo.JMDBOConntionCall;
import jm.dbo.JMDBOOutKeyValue;
import jm.dbo.JMDBOTable;
import jm.framework.log.Logger;
import jm.util.JM2DArray;
import jm.util.JMCheck;
import jm.util.JMMap;
import jm.util.JMVector;
/**
*
* <p>Title: JM 整合Swing控件,使用配置信息</p>
*
* <p>Copyright: Copyright (c) 2004-2006</p>
*
* <p>Company: 1SHome</p>
*
* <p>@author Spook</p>
*
* @since 1.3.2
* @see JDK 1.5.0.6
*/
public class SimpleDBTable extends JMDBOTable {
// 掕悢
/** 儕僜乕僗僼傽僀儖柤 */
private final String CLASS_NAME = "SimpleDBTable";
protected Logger loger_ = null;
private JMDBOConntionCall conntion_ = null;
private DBInValue value_ = null;
public SimpleDBTable () {
this("");
}
public SimpleDBTable (String name) {
super(name, "");
this.value_ = JMDBOConfig.getSQLDefaultInKey();
}
public SimpleDBTable (String name,boolean useEntity) {
super(name, "");
this.value_ = JMDBOConfig.getSQLDefaultInKey();
this.value_.setUseEntity(useEntity);
}
public void setLocalConntion () {
this.value_ = JMDBOConfig.getSQLLocalInKey();
}
// ///////////////////////////////////////////////////////////////
private int queryMaxCount = 0; // 查询/插入/更新处理最大件数
public int getQueryMaxCount () {
return queryMaxCount;
}
public boolean isUseEntity () {
return value_.isUseEntity();
}
public void setQueryMaxCount (int queryMaxCount) {
this.queryMaxCount = queryMaxCount;
}
public void setEntityName (String entityName) {
this.value_.setEntityName(entityName);
}
public void setUseEntity (boolean useEntity) {
this.value_.setUseEntity(useEntity);
}
// DBSQLCreat sqlCreat = null;
// SQL 处理机制
public DBOutValue select (String[] fields, JMMap<String, String> paramters) throws Exception {
StringBuffer sql = new StringBuffer(getSQLFirst(fields));
if (paramters != null && paramters.size() != 0) {
// where
StringBuffer sqlWhere = new StringBuffer();
boolean addG = false;
Iterator it = paramters.entrySet().iterator();
while (it.hasNext()) {
Map.Entry mpField = (Map.Entry) it.next();
if (!JMCheck.isNull(mpField.getValue())) {
if (addG) {
sqlWhere.append(" and ");
}
addG = true;
sqlWhere.append(mpField.getKey() + " = " + "'" + mpField.getValue()
+ "'");
}
}
if (sqlWhere.length() > 0) {
sql.append(" where " + sqlWhere);
}
}
value_.setSQLFree(true);
value_.setSQLID(sql.toString());
value_.setStrType(DBInValue.SVC_SELECT);
System.out.println("select=="+sql.toString());
return execute(value_);
}
public DBOutValue select () throws Exception {
return select(null, "");
}
public DBOutValue select (String[] fields) throws Exception {
return select(fields, "");
}
public DBOutValue select (String[] fields, String ...param) throws Exception {
StringBuffer sql = new StringBuffer(getSQLFirst(fields));
// where
if (param != null && param.length > 0 && !JMCheck.isNull(param[0])) {
sql.append(" where " + param[0]);
}
// order
if (param != null && param.length > 1 && !JMCheck.isNull(param[1])) {
sql.append(" order by " + param[1]);
}
// group
if (param != null && param.length > 2 && !JMCheck.isNull(param[2])) {
sql.append(" group by " + param[2]);
}
value_.setStrType(DBInValue.SVC_SELECT);
value_.setSQLID(sql.toString());
System.out.println("select=="+sql.toString());
return execute(value_);
}
public DBOutValue insert (JM2DArray iParameter) throws Exception {
StringBuffer sql = new StringBuffer();
StringBuffer sqlParam = new StringBuffer();
// insert
sql.append(" insert into ");
// from
sql.append(" " + this.getName() + " (");
JMVector<String> colNames = iParameter.getColNames();
// if(useEntity){
// try {
// JMEntity entity = (JMEntity) Class.forName(
// DBCommandKeys.PATH_ENTITY + this.getName()
// ).newInstance();
// JMVector<String> temp = JMUtility.toJMVector(entity.getItems());
// if (colNames.size() == temp.size()) {
// colNames = temp;
// }
// } catch (Exception e) {
// }
// }
boolean addG = false;
for (String name : colNames) {
if (addG) {
sql.append(" , ");
sqlParam.append(" , ");
} else {
addG = true;
}
sql.append(name);
sqlParam.append(" ? ");
}
value_.setStrType(DBInValue.SVC_INSERT);
value_.setSQLID(sql + " ) values ( " + sqlParam + " )");
value_.setUpParameter(iParameter);
System.out.println("insert=="+value_.getSQLID());
System.out.println("insert=="+iParameter);
return execute(value_);
}
// public DBOutValue insert (JM2DArray iParameter,String[] fields) throws Exception {
// StringBuffer sql = new StringBuffer();
// StringBuffer sqlParam = new StringBuffer();
// // insert
// sql.append(" insert into ");
// // from
// sql.append(" " + this.getName() + " (");
//
// boolean addG = false;
// for (String name : fields) {
// if (addG) {
// sql.append(" , ");
// sqlParam.append(" , ");
// } else {
// addG = true;
// }
// sql.append(name);
// sqlParam.append(" ? ");
// }
//
// value_.setStrType(DBInValue.SVC_INSERT);
// value_.setSQLID(sql + " ) values ( " + sqlParam + " )");
// value_.setUpParameter(iParameter);
////System.out.println(value_.getSQLID());
////System.out.println(iParameter);
// return execute(value_);
// }
public DBOutValue update (JMMap<String, String> paramters, String sqlWhere) throws Exception {
StringBuffer sql = new StringBuffer();
// delete
sql.append(" update ");
// from
sql.append(" " + this.getName() + " ");
// set
sql.append(" set ");
boolean addG = false;
Iterator it = paramters.entrySet().iterator();
while (it.hasNext()) {
Map.Entry mpField = (Map.Entry) it.next();
if (addG) {
sql.append(" , ");
} else {
addG = true;
}
sql.append(mpField.getKey() + " = " + "'" + mpField.getValue()
+ "'");
}
if (!JMCheck.isNull(sqlWhere)) {
sql.append(" where " + sqlWhere);
}
value_.setStrType(DBInValue.SVC_UPDATE);
value_.setSQLID(sql.toString());
System.out.println("update=="+sql);
return execute(value_);
}
public DBOutValue delete () throws Exception {
StringBuffer sql = new StringBuffer(" delete from " + this.getName() + " ");
value_.setStrType(DBInValue.SVC_DELETE);
value_.setSQLID(sql.toString());
System.out.println("delete=="+sql);
return execute(value_);
}
public DBOutValue delete (String sqlWhere) throws Exception {
if (!JMCheck.isNull(sqlWhere)) {
StringBuffer sql = new StringBuffer(" delete from " + this.getName() + " ");
sql.append(" where " + sqlWhere);
value_.setStrType(DBInValue.SVC_DELETE);
value_.setSQLID(sql.toString());
return execute(value_);
}
DBOutValue out = new DBOutValue();
out.setResult(true);
return out;
}
public DBOutValue delete (JM2DArray iParameter) throws Exception {
if (iParameter != null && iParameter.rowCount() != 0 && iParameter.colCount() != 0) {
StringBuffer sql = new StringBuffer(" delete from " + this.getName() + " ");
JMVector<String> colNames = iParameter.getColNames();
StringBuffer sqlWhere = new StringBuffer();
boolean addG = false;
int i = 0;
for (String name : colNames) {
if (addG) {
sqlWhere.append(" and ");
}
addG = true;
sqlWhere.append(name + " = " + "'" + iParameter.getStringValue(0, i)
+ "'");
i++;
}
sql.append(" where " + sqlWhere);
value_.setStrType(DBInValue.SVC_DELETE);
value_.setSQLID(sql.toString());
return execute(value_);
}
DBOutValue out = new DBOutValue();
out.setResult(true);
return out;
}
public DBOutValue delete (JMMap<String, String> iParameter) throws Exception {
if (iParameter != null && iParameter.size() != 0) {
StringBuffer sql = new StringBuffer(" delete from " + this.getName() + " ");
// where
StringBuffer sqlWhere = new StringBuffer();
boolean addG = false;
Iterator it = iParameter.entrySet().iterator();
while (it.hasNext()) {
Map.Entry mpField = (Map.Entry) it.next();
if (!JMCheck.isNull(mpField.getValue())) {
if (addG) {
sqlWhere.append(" and ");
} else {
addG = true;
}
sqlWhere.append(mpField.getKey() + " = " + "'" + mpField.getValue()
+ "'");
}
}
sql.append(" where " + sqlWhere);
value_.setStrType(DBInValue.SVC_DELETE);
value_.setSQLID(sql.toString());
return execute(value_);
}
DBOutValue out = new DBOutValue();
out.setResult(true);
return out;
}
// //////////////////////////////////////////////////////////////////////////////
/**
* SQL 运行
*
* @param inValue
* DBInValue
* @return DBOutValue
* @throws Exception
*/
private synchronized DBOutValue execute (DBInValue inValue) throws Exception {
// 儊儞僶曄悢偵僙僢僩
loger_ = Logger.instance(CLASS_NAME);
conntion_ = JMDBOConntionCall.getInstance();
conntion_.setSQLFree(true);
// ////////////////////////////////////////////////////////////////////////
// SQL 运行
JMDBOOutKeyValue _result = conntion_.inVoker(inValue);
DBOutValue result = new DBOutValue();
result.setResult(_result.getResult());
result.setResultCode(_result.getResultCode());
result.setResultCount(_result.getResultCount());
result.setResultData(_result.getResultData());
result.setList(_result.getList());
result.setResultMessage(_result.getResultMessage());
return result;
}
private String getSQLFirst (String[] fields) {
StringBuffer sql = new StringBuffer("select ");
boolean addG = false;
if (fields == null || fields.length == 0) {
sql.append(" * ");
} else {
for (int i = 0; i < fields.length; i++) {
if (addG) {
sql.append(" , ");
} else {
addG = true;
}
sql.append(fields[i]);
}
}
// from
sql.append(" from " + this.getName() + " ");
return sql.toString();
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -