关于数据库连接操作的工具类DBUtil.java
来源:互联网 发布:淘宝好评返现是真的吗 编辑:程序博客网 时间:2024/06/10 17:45
package Util;
import java.sql.CallableStatement;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import javax.naming.Context;
import javax.naming.InitialContext;
import javax.naming.NamingException;
import javax.sql.DataSource;
/**
* 数据库连接
* @author 吕贤丰
*
*/
public class DBUtil {
private static Connection con ;
private static PreparedStatement pstmt;
private static CallableStatement cstmt;
private static ResultSet rs;
/**
* 数据库连接
* @return Connection
*/
public static Connection getConnection(){
try {
Context context =(Context)new InitialContext();
DataSource dataSource =(DataSource)context.lookup("java:comp/env/stus");
con = dataSource.getConnection();
} catch (NamingException e) {
e.printStackTrace();
} catch (SQLException e) {
e.printStackTrace();
}
return con;
}
/**
* 数据处理(非事物)
* @param sql
* @return pstmt
*/
public static PreparedStatement getPstmt(String sql){
try {
if(con == null || con.isClosed()){
getConnection();
}
pstmt = con.prepareStatement(sql);
} catch (SQLException e) {
e.printStackTrace();
}
return pstmt;
}
/**
* 数据处理(存储过程)
* @param sql
* @return
*/
public static CallableStatement getCstmt(String sql){
try {
if(con == null || con.isClosed()){
getConnection();
}
cstmt = con.prepareCall(sql);
} catch (SQLException e) {
e.printStackTrace();
}
return cstmt;
}
/**
* 修改、删除、添加
* @return num(执行影响的行数)
*/
public static int update(){
int num = 0;
try {
num = pstmt.executeUpdate();
} catch (SQLException e) {
e.printStackTrace();
}
return num;
}
/**
* 数据查询(SQL)
* @return rs(结果集)
*/
public static ResultSet query() {
try {
rs = pstmt.executeQuery();
} catch (SQLException e) {
e.printStackTrace();
}
return rs;
}
/**
* 存储过程执行
*
*/
public static boolean execute() {
try {
cstmt.execute();
return true;
} catch (SQLException e) {
e.printStackTrace();
}
return false;
}
/**
* 数据库关闭操作
*/
public static void close(){
if(rs!=null){
try {
rs.close();
} catch (SQLException e) {
e.printStackTrace();
}
}else if(cstmt!=null){
try {
cstmt.close();
} catch (SQLException e) {
e.printStackTrace();
}
}else if(pstmt!=null){
try {
pstmt.close();
} catch (SQLException e) {
e.printStackTrace();
}
}else if(con!=null){
try {
con.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
}
}
0 0
- 关于数据库连接操作的工具类DBUtil.java
- 简单的数据库连接工具类DBUtil
- DBUtil数据库操作工具类
- 常用代码备忘录(封装 Apache Commons 的 DbUtils 实现的数据库操作工具类)-DBUtil.java
- Java 最简单的 数据库工具类 DbUtil
- jdbc数据库操作工具类--DBUtil
- JAVA- DBUtil 封装数据库工具类
- DbUtil工具的使用
- DBUtil工具类
- DBUtil工具类JdbcUtil
- 数据库工具类DBUtil
- DBUtil工具类
- DBUtil 数据库工具类
- 我写的数据库操作类DBUtil
- JAVA 自己写的JDBC数据库工具类,并作相关的测试DBUtil
- 工具类--JAVA关于日期的操作
- java 从数据源获取连接工具类DBUtil 实例
- JAVA学习笔记(五十一)- DBUtil 封装数据库工具类
- Lucene教程(四) 索引的更新和删除
- develop bug
- linux映射磁盘或者文件夹到windows
- 什么是java序列化,如何实现java序列化?
- jQuery/Ajax/PHP/Json 的一个综合例子
- 关于数据库连接操作的工具类DBUtil.java
- web app iscroll
- C++进阶 必读书籍
- linux awk命令详解
- Hive通过已有表来创建新表时出现一些列错误
- VS2010/MFC sqlite3
- 孤儿进程与僵尸进程
- 利用cookies 保存登录信息
- eclipse安装Axis2插件和简单的webservice发布