package db;
import java.sql.*;
import java.util.Vector;
import javax.swing.JOptionPane;
/**
* 数据库相关操作实现类
* @author SOTRAIN 王刚
*/
public class DBOperation {
// 声明静态的JDBC连接数据库操作对象
private static DBPool dbc = new DBPool();
// 声明数据库操作对象
private static Connection conn = null;
private static Statement stmt = null;
private static ResultSet rs = null;
/**
* 从数据库中查询所有记录
* @param sql 查询语句
* @return record 二维数组
*/
public static Object[][] getRecordFromDB(String sql) {
// 声明
Object[][] record = null;
Vector<Object[]> v = new Vector<Object[]>();
// 保存结果集的列数和行数
int col = 0;
int row = 0;
try {
// 与数据库建立连接
conn = dbc.getConnection();
// 建立Statement对象
stmt = conn.createStatement();
// 执行SQL语句
rs = stmt.executeQuery(sql);
// 从ResultSet对象的元数据中的获得列数信息
col = rs.getMetaData().getColumnCount();
// 遍历结果集中的记录
while (rs.next()) {
Object[] vx = new Object[col];
for (int c = 0; c < col; c++) {
// 据字段索引获取该字段的内容(索引从1开始)
vx[c] = rs.getObject(c + 1);
}
v.add(vx);
}
// 获得结果集中的记录数
row = v.size();
// 初始化二维数组的大小
record = new Object[row][col];
// 引用二维数组
record = v.toArray(record);
} catch (SQLException ex) {
JOptionPane.showMessageDialog(null, "对不起,SQL查询出现异常,请稍后再试!", "SQL查询出错", JOptionPane.WARNING_MESSAGE);
} finally {
// 关闭,释放资源
try {
if (rs != null) {
rs.close();
}
if (stmt != null) {
stmt.close();
}
if (conn != null) {
conn.close();
}
} catch (SQLException ex) {
JOptionPane.showMessageDialog(null, "对不起,关闭相关资源出现异常,请稍后再试!", "关闭相关资源出错", JOptionPane.WARNING_MESSAGE);
}
}
return record;
}
/**
* 更新数据库中的记录
* @@param sql 增加语句
* @return true or false
*/
public static int updateRecordToDB(String sql) {
// 声明操作影响到的记录数
int count = 0;
try {
// 与数据库建立连接
conn = dbc.getConnection();
// 建立Statement对象
stmt = conn.createStatement();
// 执行SQL语句
count = stmt.executeUpdate(sql);
} catch (SQLException ex) {
JOptionPane.showMessageDialog(null, "对不起,SQL查询出现异常,请稍后再试!", "SQL查询出错", JOptionPane.WARNING_MESSAGE);
} finally {
// 关闭,释放资源
try {
if (stmt != null) {
stmt.close();
}
if (conn != null) {
conn.close();
}
} catch (SQLException ex) {
JOptionPane.showMessageDialog(null, "对不起,关闭相关资源出现异常,请稍后再试!", "关闭相关资源出错", JOptionPane.WARNING_MESSAGE);
}
}
return count;
}
}
没有合适的资源?快使用搜索试试~ 我知道了~
资源推荐
资源详情
资源评论
收起资源包目录
Struts1&Struts2登录系统(完全版) (110个子文件)
DBOperation.class 3KB
DBOperation.class 3KB
URLFilter.class 3KB
URLFilter.class 3KB
LoginAction.class 2KB
LoginAction.class 2KB
LoginForm.class 2KB
LogoutAction.class 1KB
DBPool.class 1KB
DBPool.class 1KB
LogoutAction.class 1KB
Login.class 732B
.classpath 1KB
.classpath 403B
sdmenu.css 1KB
sdmenu.css 1KB
style.css 449B
style.css 449B
banner.gif 21KB
banner.gif 21KB
error.gif 3KB
error.gif 3KB
ok.gif 3KB
ok.gif 3KB
peo.gif 1KB
peo.gif 1KB
main.gif 1KB
main.gif 1KB
exit.gif 1KB
exit.gif 1KB
bottom.gif 898B
bottom.gif 898B
expanded.gif 850B
expanded.gif 850B
collapsed.gif 847B
collapsed.gif 847B
linkarrow.gif 846B
linkarrow.gif 846B
toptitle.gif 466B
toptitle.gif 466B
refresh.gif 94B
refresh.gif 94B
back.gif 85B
back.gif 85B
up.gif 83B
up.gif 83B
addUser.html 5KB
addUser.html 5KB
login.html 3KB
login.html 3KB
index.html 810B
index.html 810B
banner.html 99B
banner.html 99B
xwork-2.1.2.jar 2.18MB
freemarker-2.3.13.jar 850KB
struts2-core-2.1.6.jar 719KB
struts.jar 531KB
antlr.jar 350KB
commons-beanutils.jar 184KB
spring-test-2.5.6.jar 177KB
commons-digester.jar 164KB
ognl-2.6.11.jar 164KB
junit-3.8.1.jar 118KB
commons-io-1.3.2.jar 86KB
commons-validator.jar 82KB
jakarta-oro.jar 64KB
commons-fileupload-1.2.1.jar 56KB
commons-logging-1.1.jar 52KB
commons-logging.jar 37KB
commons-fileupload.jar 22KB
DBOperation.java 3KB
DBOperation.java 3KB
LoginAction.java 2KB
LoginAction.java 2KB
URLFilter.java 2KB
URLFilter.java 2KB
LoginForm.java 1KB
LogoutAction.java 963B
DBPool.java 944B
DBPool.java 944B
LogoutAction.java 893B
Login.java 714B
login.jpg 23KB
login.jpg 23KB
menu.jpg 1KB
menu.jpg 1KB
title.jpg 302B
title.jpg 302B
sdmenu.js 4KB
sdmenu.js 4KB
common.js 3KB
common.js 3KB
menu.jsp 2KB
menu.jsp 2KB
failure.jsp 2KB
failure.jsp 2KB
success.jsp 2KB
success.jsp 2KB
shortcut.jsp 1KB
共 110 条
- 1
- 2
资源评论
- newdeathnote2013-11-08蛮好用有帮助,有图更好
- 右手心的太阳2013-05-07内容挺好的,就是连接池第一次用,还得再仔细看看
- hy10043229752013-03-08内容挺好的,就是调配有个说明会更好懂
- warger19872014-09-03还可以,连接池这块的功能都有,值得参考
wg_82726230
- 粉丝: 1
- 资源: 2
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功