package com.dao;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.PreparedStatement;
public class BaseDao {
// 这个getconnection方法 可以使用连接池技术,两种方法都必须会 连接池和jdbc连接数据库
private static final String DRIVER = "oracle.jdbc.driver.OracleDriver";
private static final String URL = "jdbc:oracle:thin:@localhost:1521:orcl";
private static final String USER = "news";
private static final String PWD = "accp";
Connection conn = null;
PreparedStatement pstmt = null;
ResultSet rs = null;
public Connection getConnection() {
Connection conn = null;
try {
Class.forName(DRIVER);
conn = DriverManager.getConnection(URL, USER, PWD);
} catch (Exception e) {
e.printStackTrace();
}
return conn;
}
/**
* String sql
* 接收SQL语句
* Object... param
* 可变数组参数。用...的话,传参数时可传可"不传",传的话,可以是一个个并列地传,也可以直接是一个数组。
* 这个是执行查询的方法
* 返回值是结果集(resultset)
*/
public ResultSet executeQuery(String sql, Object... param) {
conn = getConnection();
try {
pstmt = conn.prepareStatement(sql);
if (param != null) {
for (int i = 0; i < param.length; i++) {
pstmt.setObject(i + 1, param[i]);
}
}
rs = pstmt.executeQuery();
} catch (Exception e) {
e.printStackTrace();
}
return rs;
}
/**
* String sql
* 接收SQL语句
* Object... param
* 可变数组参数。用...的话,传参数时可传可"不传",传的话,可以是一个个并列地传,也可以直接是一个数组。
* 这个是执行更新的方法
* 返回值row(更新成功次数)
*/
public int executeUpdate(String sql, Object... param) {
int row = 0;
conn = getConnection();
try {
pstmt = conn.prepareStatement(sql);
if (param != null) {
for (int i = 0; i < param.length; i++) {
pstmt.setObject(i + 1, param[i]);
}
}
row = pstmt.executeUpdate();
} catch (Exception e) {
e.printStackTrace();
}
return row;
}
// 关闭连接
public void closeAll() {
try {
if (rs != null) {
rs.close();
}
if (pstmt != null) {
pstmt.close();
}
if (conn != null) {
conn.close();
}
} catch (Exception e) {
e.printStackTrace();
}
}
}
主流数据库jar包及BaseDao
3星 · 超过75%的资源 需积分: 9 78 浏览量
2014-10-20
19:29:35
上传
评论
收藏 2.89MB RAR 举报
YiChunLin
- 粉丝: 0
- 资源: 2
最新资源
- 1040g0cg310ravpiu6ibg5pg00tsipsln3ju2d0g 2
- 基于Python的SAR图像去噪CNN-NLM设计源码
- redhat6升级到redhat7,过程redhat6.x-> redhat6.10->rehat7.9 主版本最高版本
- 基于Django的流程引擎设计源码
- 基于Node.js的Express框架与MySQL的后台管理系统设计源码
- 基于Java的Flink流批一体数据处理快速集成开发框架设计源码
- FirstFilterOrderCompare
- Screenshot_2024-03-28-19-17-25-020_com.ss.android.lark.jpg
- 基于Java的车辆违章信息查询系统设计源码
- wqeAFSDADWDAESD
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈