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

📄 basedao.java

📁 连接池基本原理:连接池最基本的思想就是预先建立一些连接放置于内存对象中以备使用。对于多于链接池中链接数的并发请求
💻 JAVA
字号:
package com.acccp.fan.db;

import java.sql.PreparedStatement;
import java.sql.SQLException;
import java.util.List;

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

import org.apache.commons.dbutils.QueryRunner;
import org.apache.commons.dbutils.ResultSetHandler;

public  class Basedao {
	
	private static DataSource ds=null;
	//private Connection conn=null;
	public Basedao() {	
	}
	
	//一加载类时 静态块就会执行
	static {
		try {
			Context context=new InitialContext();
			ds=(DataSource) context.lookup("java:comp/env/jdbc/addressBook");
			
		} catch (NamingException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}	
	}
	
	//全查 无参
	public List getAllNoteBook(String sql,ResultSetHandler rsh) throws SQLException{
		QueryRunner qr=new QueryRunner(ds);
		List list=(List) qr.query(sql, rsh);
		return list;		
	}
	
	
	//带参数查询
	protected List getNoteBookById(String sql,Object [] args,ResultSetHandler rsh) throws SQLException{
		QueryRunner qr=new QueryRunner(ds);
		List list=(List) qr.query(sql, args, rsh);
		return list;
	}
	
	//增删改
	protected void execute(String sql,Object []args , ResultSetHandler rsh) throws SQLException{
		PreparedStatement ps=ds.getConnection().prepareStatement(sql);
		for(int i=0;i<args.length;i++){
			ps.setObject(i+1,args[i] );
		}
		ps.executeUpdate();
	}
	
}

⌨️ 快捷键说明

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