import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
/**
* 用于JDBC操作
*
* @author 沙琪玛
*/
public class ByteJDBC {
private String driverName = "oracle.jdbc.driver.OracleDriver";
private String url = "";
private String userName = "";
private String userPwd = "";
/**
* 删除单条数据
*
* @param tableName
* 表名
* @param idName
* idName名称
* @param idValue
* idValue值
*/
public void deleteById(String tableName, String idName, String idValue) {
String sql = "delete from " + tableName + " where " + idName + "='"
+ idValue + "'";
doSQL(sql);
}
/**
* 执行SQL(查询) 并且返回生成结果集表格
*
* @return String
*/
public String selectSQL(String selectSQL) {
Connection conn = null;
Statement st = null;
ResultSet rs = null;
// 用来存放查询的结果
StringBuffer sb = new StringBuffer();
try {
// 加载驱动
Class.forName(driverName);
// 创建连接
conn = DriverManager.getConnection(url, userName, userPwd);
// 创建Statement
st = conn.createStatement();
// 执行sql语句,得到查询结果
rs = st.executeQuery(selectSQL);
// 输出查询结果
int cloNum = rs.getMetaData().getColumnCount();
sb.append("<tr class=\"th\">");
for (int i = 0; i < cloNum; i++) {
sb.append("<td>");
sb.append(rs.getMetaData().getColumnName(i + 1));
sb.append("</td>");
}
sb.append("</tr>");
while (rs.next()) {
sb.append("<tr>");
for (int i = 0; i < cloNum; i++) {
sb.append("<td>");
sb.append(rs.getString(i + 1));
sb.append("</td>");
}
sb.append("</tr>");
}
// 关闭资源
rs.close();
st.close();
conn.close();
} catch (Exception ex) {
// 输出错误信息
ex.printStackTrace();
} finally {
// finally子句总是会执行(就算发生错误),这样可以保证资源的绝对关闭
try {
if (rs != null)
rs.close();
} catch (SQLException e) {
e.printStackTrace();
}
try {
if (st != null)
st.close();
} catch (SQLException e) {
e.printStackTrace();
}
try {
if (conn != null)
conn.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
return sb.toString();
}
/**
* 执行sql语句(修改、删除,插入)
*/
public void doSQL(String sqlStr) {
Connection conn = null;
Statement st = null;
try {
// 加载驱动
Class.forName(driverName);
// 创建连接
conn = DriverManager.getConnection(url, userName, userPwd);
// 创建Statement
st = conn.createStatement();
// 执行sql语句,得到查询结果
st.execute(sqlStr);
// 关闭资源
st.close();
conn.close();
} catch (Exception ex) {
// 输出错误信息
ex.printStackTrace();
} finally {
// finally子句总是会执行(就算发生错误),这样可以保证资源的绝对关闭
try {
if (st != null)
st.close();
} catch (SQLException e) {
e.printStackTrace();
}
try {
if (conn != null)
conn.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
}
}
简单封装JDBC操作类 适合初学者 不适合高级使用
最新推荐文章于 2024-10-12 22:35:37 发布