添加代码
This commit is contained in:
parent
c3a882ecaa
commit
2c03f0e2f2
|
@ -1,8 +1,58 @@
|
|||
package pres.auxiliary.tool.sql;
|
||||
|
||||
public class AbstractSql {
|
||||
import java.sql.Connection;
|
||||
import java.sql.PreparedStatement;
|
||||
import java.sql.ResultSet;
|
||||
import java.sql.SQLException;
|
||||
import java.sql.Statement;
|
||||
|
||||
public AbstractSql() {
|
||||
/**
|
||||
* <p><b>文件名:</b>AbstractSql.java</p>
|
||||
* <p><b>用途:</b>
|
||||
* 数据库工具基类,定义工具需要实现的基本方法以及通用方法
|
||||
* </p>
|
||||
* <p><b>编码时间:</b>2020年12月7日上午8:12:04</p>
|
||||
* <p><b>修改时间:</b>2020年12月7日上午8:12:04</p>
|
||||
* @author 彭宇琦
|
||||
* @version Ver1.0
|
||||
* @since JDK 1.8
|
||||
*
|
||||
*/
|
||||
public class AbstractSql {
|
||||
/**
|
||||
* 存储需要执行的SQL语句
|
||||
*/
|
||||
StringBuilder sqlText = new StringBuilder("");
|
||||
|
||||
/**
|
||||
* 数据库连接类对象
|
||||
*/
|
||||
protected Connection connect;
|
||||
protected Statement statement;
|
||||
protected PreparedStatement preState;
|
||||
|
||||
/**
|
||||
* 用于返回当前需要执行的Sql语句
|
||||
* @return 需要执行的Sql语句
|
||||
*/
|
||||
public String getSql() {
|
||||
return sqlText.toString();
|
||||
}
|
||||
|
||||
/**
|
||||
* 用于执行存储SQL,并返回结果集({@link ResultSet})对象
|
||||
* @return {@link ResultSet}对象
|
||||
*/
|
||||
public ResultSet run() {
|
||||
try {
|
||||
return connect.prepareStatement(sqlText.toString()).executeQuery();
|
||||
} catch (SQLException e) {
|
||||
throw new DatabaseException(String.format("SQL无法执行。\nSQL:%s", sqlText.toString()));
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public String toString() {
|
||||
return getSql();
|
||||
}
|
||||
}
|
||||
|
|
|
@ -3,6 +3,8 @@ package pres.auxiliary.tool.sql;
|
|||
import java.sql.Driver;
|
||||
import java.sql.DriverManager;
|
||||
import java.sql.SQLException;
|
||||
import java.util.ArrayList;
|
||||
import java.util.LinkedHashMap;
|
||||
import java.util.Properties;
|
||||
|
||||
import oracle.jdbc.driver.OracleDriver;
|
||||
|
@ -20,11 +22,6 @@ import oracle.jdbc.driver.OracleDriver;
|
|||
*
|
||||
*/
|
||||
public class OracleSql extends AbstractSql {
|
||||
/**
|
||||
* 存储需要执行的SQL语句
|
||||
*/
|
||||
StringBuilder sqlText = new StringBuilder("");
|
||||
|
||||
/**
|
||||
* 构造方法,用于指定数据库基本信息
|
||||
* @param username 用户名
|
||||
|
@ -53,4 +50,26 @@ public class OracleSql extends AbstractSql {
|
|||
}
|
||||
}
|
||||
|
||||
public OracleSql type() {
|
||||
|
||||
return this;
|
||||
}
|
||||
|
||||
/**
|
||||
* 用于查找指定表名的数据,可指定输出的字段
|
||||
* @param tableName 表名
|
||||
* @param fieldNames 字段名
|
||||
*/
|
||||
public OracleSql find(String tableName, String...fieldNames) {
|
||||
sqlText.append("SELECT ");
|
||||
|
||||
//添加字段名
|
||||
sqlText.append("");
|
||||
|
||||
sqlText.append(" ");
|
||||
sqlText.append("FROM ");
|
||||
sqlText.append(tableName);
|
||||
|
||||
return this;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -0,0 +1,10 @@
|
|||
package pres.auxiliary.tool.sql;
|
||||
|
||||
public enum SqlType {
|
||||
SELECT,
|
||||
INSERT,
|
||||
DELECT,
|
||||
TRUNCATE,
|
||||
UPDATE;
|
||||
|
||||
}
|
Loading…
Reference in New Issue