⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 sqlhelper.java

📁 java 数据连接池 通用类(范例) java数据连接池 javaDAO通用类 (范例) 可继续扩展
💻 JAVA
字号:
package com.flamingsun.db;
import java.sql.*;

import javax.naming.Context;
import javax.naming.InitialContext;
import javax.naming.NamingException;
import javax.sql.DataSource;

public class SqlHelper {	
	
	private static Connection conn = null;
	public SqlHelper() {
	}
	

	/*
	 * 
	 * **/
	public static Connection getConn() {
		
		try {			
			Context cxt=new InitialContext();
			if(cxt==null){
				System.out.println("--Context上下文尚未初始化!--");
				return null;
			}
			String JNDIName=Env.getInstance().getProperty("JNDIName");
			if(JNDIName==null || JNDIName==""){
				System.out.println("--JNDIName尚未获取!--");
				return null;
			}			
			DataSource ds=(DataSource)cxt.lookup(JNDIName);
			if(ds==null){
				System.out.println("--DataSource尚未初始化!--");
				return null;
			}
			conn=ds.getConnection();
		} catch (SQLException ex1) {			
			System.out.println("--数据库连接创建失败!--");
			ex1.printStackTrace();
		}
		catch (NamingException e) {
			e.printStackTrace();
		}
		return conn;
	}
	 public static ResultSet executeQuery(String sql)
	 {
	     ResultSet rs = null;
	     try
	     {
	         PreparedStatement ps = getConn().prepareStatement(sql);
	         rs = ps.executeQuery();
	     }
	     catch(SQLException e)
	     {
	         e.printStackTrace();
	     }
	     return rs;
	 }

	 public static ResultSet executeQuery(String sql, Object obj[])
	 {
	     ResultSet rs = null;
	     try
	     {
	         PreparedStatement ps = getConn().prepareStatement(sql);
	         setPreparedStatement(ps, obj);
	         rs = ps.executeQuery();
	     }
	     catch(SQLException e)
	     {
	         e.printStackTrace();
	     }
	     return rs;
	 }

	 public static int executeUpdate(String sql)
	 {
	     int count=0;
	     Connection con=null;
	     PreparedStatement ps=null;     
	     try
	     {
	    	 con=getConn();
	         ps = con.prepareStatement(sql);
	         count = ps.executeUpdate();
	     }
	     catch(SQLException e)
	     {
	         e.printStackTrace();
	     }
	     finally
	     {
	    	 closeConn(null,ps);
	     }
	     return count;
	 }

	 public static int executeUpdate(String sql, Object obj[])
	 {
		 int count=0;
	     Connection con=null;
	     PreparedStatement ps=null; 
	     try
	     {
	    	 con=getConn();
	         ps = con.prepareStatement(sql);
	         setPreparedStatement(ps, obj);
	         count = ps.executeUpdate();
	     }
	     catch(SQLException e)
	     {
	         e.printStackTrace();
	     }
	     finally
	     {
	    	 closeConn(null,ps);
	     }
	    
	     return count;
	 }
	 //设置参数
	 private static void setPreparedStatement(PreparedStatement ps, Object obj[])
	 {
	     if(obj != null && ps != null)
	         try
	         {
	             for(int i = 0; i < obj.length; i++)
	                 ps.setObject(i + 1, obj[i]);

	         }
	         catch(Exception ex)
	         {
	             ex.printStackTrace();
	         }
	 }
	// 关闭数据库连接
	public static void closeConn(ResultSet rs,PreparedStatement prst) {
		try {
			if (rs != null) {
				rs.close();				
				rs=null;
			}		
			if (prst != null) {
				prst.close();
				prst=null;
			}
			if(conn!=null){
				conn.close();
				conn=null;
			}			
		} catch (SQLException ex) {
			ex.printStackTrace();
		}
	}
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -