下面是编程之家 jb51.cc 通过网络收集整理的代码片段。
编程之家小编现在分享给大家,也给大家做个参考。
package org.home.util;
import java.sql.Connection;
import java.sql.sqlException;
import java.util.List;
import org.apache.commons.dbutils.QueryRunner;
import org.apache.commons.dbutils.ResultSetHandler;
import org.apache.commons.dbutils.handlers.BeanListHandler;
import org.apache.tomcat.jdbc.pool.DataSource;
import org.apache.tomcat.jdbc.pool.PoolProperties;
public class DBUtil {
private static DataSource ds;
private static QueryRunner runner;
static {
PoolProperties p = new PoolProperties();
p.setUrl("jdbc:MysqL://localhost:3306/home");
p.setDriverClassName("com.MysqL.jdbc.Driver");
p.setUsername("root");
p.setPassword("sa");
p.setJmxEnabled(true);
p.setTestWhileIdle(false);
p.setTestOnBorrow(true);
p.setValidationQuery("SELECT 1");
p.setTestOnReturn(false);
p.setValidationInterval(30000);
p.setTimeBetweenEvictionRunsMillis(30000);
p.setMaxActive(100);
p.setInitialSize(10);
p.setMaxWait(10000);
p.setRemoveAbandonedTimeout(60);
p.setMinEvictableIdleTimeMillis(30000);
p.setMinIdle(10);
p.setLogAbandoned(true);
p.setRemoveAbandoned(true);
p.setJdbcInterceptors("org.apache.tomcat.jdbc.pool.interceptor.ConnectionState;"
+ "org.apache.tomcat.jdbc.pool.interceptor.StatementFinalizer");
ds = new DataSource();
ds.setPoolProperties(p);
runner = new QueryRunner();
}
private static Connection getConnection() throws sqlException {
return ds.getConnection();
}
/**
* 删除
* @param tableName
* @param id
* @return
*/
public static boolean delete(String tableName,long id) {
String sql = "delete from " + tableName + " where id=?";
int i = 0;
boolean flag = false;
Connection con = null;
try {
con = getConnection();
i = runner.update(con,sql,id);
if (i >= 0) {
flag = true;
}
} catch (sqlException e) {
System.out.println(e.getMessage());
} finally {
if (con != null) {
try {
con.close();
} catch (sqlException e) {
System.out.println(e.getMessage());
}
}
}
return flag;
}
/**
* 修改/添加
* @param sql
* @param pring
* @return
*/
public static boolean update(String sql,Object pring[]) {
int i = 0;
boolean flag = false;
Connection con = null;
try {
con = getConnection();
i = runner.update(con,pring);
if (i >= 0) {
flag = true;
}
} catch (sqlException e) {
e.printStackTrace();
} finally {
if (con != null) {
try {
con.close();
} catch (sqlException e) {
e.printStackTrace();
}
}
}
return flag;
}
/**
* 查询
* @param sql
* @param rsh
* @return
*/
public static List> query(String sql,ResultSetHandler> rsh) {
List> result = null;
Connection con = null;
try {
con = getConnection();
result = (List>) runner.query(con,rsh);
} catch (sqlException e) {
e.printStackTrace();
} finally {
if (con!=null) {
try {
con.close();
} catch (sqlException e) {
e.printStackTrace();
}
}
}
return result;
}
/**
* 分页查询
* @param sql
* @param rsh
* @param page
* @param pageSize
* @return
*/
public static List> query(String sql,ResultSetHandler> rsh,int page,int pageSize) {
List> result = null;
Connection con = null;
try {
con = getConnection();
result = (List>) runner.query(con,sql + " limit " + page*pageSize + "," + pageSize,rsh);
} catch (sqlException e) {
e.printStackTrace();
} finally {
if (con!=null) {
try {
con.close();
} catch (sqlException e) {
e.printStackTrace();
}
}
}
return result;
}
/**
* 根据id查询
* @param clasz
* @param id
* @return
*/
public static Object get(Class> clasz,int id) {
Connection con = null;
Object obj = null;
try {
con = getConnection();
@SuppressWarnings({ "unchecked","rawtypes" })
List>result = (List>) runner.query(con,"select * from " + clasz.getSimpleName().toLowerCase() + " where id=" + id,new BeanListHandler(clasz));
if (result!=null && result.size()>0) {
obj = result.get(0);
}
} catch (sqlException e) {
e.printStackTrace();
} finally {
if (con!=null) {
try {
con.close();
} catch (sqlException e) {
e.printStackTrace();
}
}
}
return obj;
}
}
以上是编程之家(jb51.cc)为你收集整理的全部代码内容,希望文章能够帮你解决所遇到的程序开发问题。
如果觉得编程之家网站内容还不错,欢迎将编程之家网站推荐给程序员好友。
总结
如果觉得编程之家网站内容还不错,欢迎将编程之家网站推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您喜欢交流学习经验,点击链接加入交流1群:1065694478(已满)交流2群:163560250