基于jdbc的事务的链接工厂

来源:互联网 发布:linux删除整个文件夹 编辑:程序博客网 时间:2024/05/20 18:52
/**  
 * Date:2017年10月23日下午3:20:49 
 * Copyright (c) 2017, czz1990520@163.com All Rights Reserved. 
 * 
*/  
/**   


* @Description: TODO
* @author 程昭昭 czz1990520@163.com   
* @date 2017年10月23日 下午3:20:49 
  
*/


  
  
package com.czz.ehzc.transaction;


import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;


import javax.sql.DataSource;


import com.mchange.v2.c3p0.ComboPooledDataSource;




/** 
 * ClassName:TransactionFactory <br/> 
 * Function: TODO ADD FUNCTION. <br/> 
 * Reason:   TODO ADD REASON. <br/> 
 * Date:     2017年10月23日 下午3:20:49 <br/> 
 * @author   czz19 
 * @version   
 * @since    JDK 1.8 
 * @see       
 */
/** 
* @Description: TODO 
* @author czz1990520@163.com 程昭昭 
* @date 2017年10月23日 下午3:20:49 
*  
*/
public class TransactionFactory {
/**
* 提交事务
* date: 2017年10月23日 下午3:22:36 <br/> 
* @author czz1990520@163.com
* @param conn
*/
public static void commit(Connection conn) {
if(conn!=null) {
try {
conn.commit();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}

/**
* 回滚事务
* date: 2017年10月23日 下午3:24:23 <br/> 
* @author czz1990520@163.com
* @param conn
*/
public static void rollback(Connection conn) {
if(conn!=null) {
try {
conn.rollback();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}

/**
* 自动提交
* date: 2017年10月23日 下午3:24:50 <br/> 
* @author czz1990520@163.com
* @param conn
*/
public static void beginTransaction(Connection conn) {
if(conn!=null) {
try {
conn.setAutoCommit(false);
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}

/**
* 数据库连接池
*/
private static DataSource dataSource = null;
/**
* 初始化数据库连接池 
*/
static {
dataSource = new ComboPooledDataSource("c3p0-config.xml");
}
/**
* 创建数据库链接
* date: 2017年10月23日 下午3:28:03 <br/> 
* @author czz1990520@163.com
* @return
* @throws SQLException
*/
public static Connection getConnection() throws SQLException {

return dataSource.getConnection();
}

/**
* 关闭数数据库连接池
* date: 2017年10月23日 下午3:29:24 <br/> 
* @author czz1990520@163.com
* @param rs
* @param pstmt
* @param conn
*/
public static void releaseDataBase(ResultSet rs,PreparedStatement pstmt,Connection conn) {
if(rs!= null) {
try {
rs.close();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
if(pstmt!= null) {
try {
pstmt.close();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
if(conn!= null) {
try {
conn.close();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
}










































  
原创粉丝点击