java JDBC 连接数据库工具类

本文介绍了一个Java中用于JDBC连接MySQL数据库的工具类,包括获取和关闭连接,以及通用的查询和更新方法。提供了数据库操作的简单示例。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

jdbc数据库操作

连接依赖获取,点击这里

数据库连接的常用工具类,仅提供通用的获取连接 关闭连接 通用的查询和更新方法
import java.sql.*;
import java.util.*;

import aimang.com.control.ConstantSystem;
/**
 * 数据库连接工具 提供 获取连接 关闭连接 通用的查询和更新方法
 *
 */
public class DBHelper {
	private static String user = "jdbc:mysql://localhost:3306/mysql?useSSL=false";
	private static String userName ="root";
	private static String userPwd = "123456";
	
	/**
	 * 获取数据库连接对象
	 * @return
	 */
	public static Connection getConn() {
		Connection conn = null;
		try {
//			Class.forName("com.mysql.cj.jdbc.Driver");   mysql 8.0以后建议用这个 
			Class.forName("com.mysql.jdbc.Driver");
			conn = DriverManager.getConnection(user,userName ,userPwd);
		} catch (Exception e) {
			e.printStackTrace();
		}
		return conn;
	}
	
	/**
	 * 关闭数据库连接对象
	 * @param conn
	 */
	public static void closeConn(Connection conn) {
		try {
			if(conn!=null) {
				conn.close();
			}
		} catch (SQLException e) {
			e.printStackTrace();
		}
	}
	
	/**
	 * 通用的查询功能 返回资源数据集
	 * @param conn
	 * @param sql
	 * @param params
	 * @return
	 */
	public static ResultSet queryDate(Connection conn,String sql,List<Object> params) {
		ResultSet rs = null;
		try {
			PreparedStatement ps = conn.prepareStatement(sql);
			if(params!=null && params.size()>0) {
				for(int i=0;i<params.size();i++) {
					ps.setObject((i+1), params.get(i));
				}
			}
			rs = ps.executeQuery();
		} catch (Exception e) {
			e.printStackTrace();
		}
		return rs;
	}
	
	/**
	 * 通用的更新方法 返回布尔值表示是否更新成功!
	 * @param conn
	 * @param sql
	 * @param params
	 * @return
	 */
	public static boolean updateDate(Connection conn,String sql,List<Object> params) {
		boolean flag = false;
		try {
			PreparedStatement ps = conn.prepareStatement(sql);
			if(params!=null && params.size()>0) {
				for(int i=0;i<params.size();i++) {
					ps.setObject(i+1, params.get(i));
				}
			}
			int e = ps.executeUpdate();
			if(e>0) {
				flag=true;
			}
		} catch (SQLException e) {
			e.printStackTrace();
		}
		return flag;
	}
}
对数据库操作的方法
/**
 *   查询数据库中的数据,返回查询后的list
	 *  你也可以把list当中的元素换成自定义的数据类型
 * @return
 */
public List<String> getMysqlData(String id,String class_id){
	List<String> l = new ArrayList<>();
	Connection conn = null;
	try {
		conn = DBHelper.getConn();
		String sql = "select name,age from student where id=? and class_id=?";
		List<Object> params = new ArrayList<String>();
		params.add(id);
		params.add(class_id);
		ResultSet rs = DBHelper.queryDate(conn, sql, params);
		while(rs.next()) {
			String data = rs.getString("name")+"\t"+rs.getString("age ");
			l.add(data);
		}
	} catch (Exception e) {
		e.printStackTrace();
	} finally {
		DBHelper.closeConn(conn);
	}
	return l;
}
package com.hexiang.utils.dao; import java.sql.Connection; import java.sql.DriverManager; import java.sql.ResultSet; import java.sql.SQLException; import java.sql.Statement; import java.util.Properties; import javax.naming.Context; import javax.naming.InitialContext; import javax.naming.NamingException; import javax.sql.DataSource; import org.apache.log4j.Logger; public class DBConnection { /** * 获得与数据库连接 * * @param path * @return Connection */ public static Connection getConn(String classDriver, String url, String user, String pwd) { try { Class.forName(classDriver); return DriverManager.getConnection(url, user, pwd); } catch (ClassNotFoundException ex) { ex.printStackTrace(); } catch (SQLException ex) { ex.printStackTrace(); } return null; } public static Connection getConn(DataSource dataSource) { try { return dataSource.getConnection(); } catch (SQLException ex) { ex.printStackTrace(); } return null; } public static Connection getConn(String jndiName) { try { Context ctx; ctx = new InitialContext(); DataSource dataSource = (DataSource) ctx.lookup("java:comp/env/" + jndiName); return dataSource.getConnection(); } catch (NamingException ex) { ex.printStackTrace(); } catch (SQLException ex) { ex.printStackTrace(); } return null; } public static Connection getConn(Properties properties) { try { String driver = properties.getProperty("jdbc.driverClassName"); String url = properties.getProperty("jdbc.url"); String user = properties.getProperty("jdbc.username"); String password = properties.getProperty("jdbc.password"); Class.forName(driver); return DriverManager.getConnection(url, user, password); } catch (ClassNotFoundException ex) { ex.printStackTrace(); } catch (SQLException ex) { ex.printStackTrace(); } return null; } /** * oracle连接 * * @param path * @return Connection */ public static Connection getOracleConn(String
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值