⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 abstractdeletesql.java

📁 羽量级数据持久层开发框架
💻 JAVA
字号:
package org.speedframework.sql;

import java.lang.reflect.Field;
import java.util.ArrayList;
import java.util.List;

import org.speedframework.exception.SpeedFrameworkException;
import org.speedframework.utilities.StringUtils;

public abstract class AbstractDeleteSQL extends AbstractCommonSQL implements
		IDeleteSQL {
	protected String[] columns;

	public String getSQL() {
		StringBuffer del_sql = new StringBuffer();
		
		StringBuffer rel_sql = new StringBuffer();

		try {
			if ((columns != null) && (columns.length > 0)) {
				for (int i = 0; i < columns.length; i++) {
					del_sql.append(" and " + columns[i] + "=? ");
				}

				// int key_count = columns.length;
				// if (key_count != 0) {
				// Iterator it = columns.iterator();
				// while (it.hasNext()) {
				// del_sql.append(" and " + it.next() + "=? ");
				// }
				// }
			} else {
				Field[] fields = this.tableObject.getClass()
						.getDeclaredFields();

				for (int i = 0; i < fields.length; i++) {
					del_sql.append(" and " + StringUtils.getField(fields[i])
							+ "=? ");
				}
			}

			rel_sql.append("delete from " + this.getTableName() + " where 1=1");
		} catch (Exception e) {
			throw new SpeedFrameworkException(e);
		}

		return rel_sql.append(del_sql.toString()).toString();
	}

	public List getParam(String sql) {
		sql = sql.toLowerCase();

		String[] sql_type = null;
		String param_str = null;
		String[] param_set = null;
		List list_column = null;

		if (sql.indexOf("where") != -1) {
			sql_type = sql.split("where");
			param_str = sql_type[sql_type.length - 1];
			param_set = param_str.split("and");
		}

		if (param_set != null) {
			list_column = new ArrayList();

			for (int i = 0; i < param_set.length; i++) {
				String param_ = param_set[i].trim();

				if (param_.indexOf("?") != -1) {
					param_ = param_.substring(0, param_.indexOf("="));
					list_column.add(param_);
				}
			}
		}

		return list_column;
	}

	/**
	 * 
	 * @param columns
	 */
	public void setColumn(String[] columns) {
		this.columns = columns;
	}

}

⌨️ 快捷键说明

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