首页>代码>分享weibo4j中用到的mysql2bean的java工具>/mysql2bean/src/main/java/com/javaniu/DBManager.java
package com.javaniu;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;

//本类专门用来连接数据库,可以作为固定的工具类使用(记下来即可)
public class DBManager {
	// 定义一个静态的连接对象用来连接数据库
	// private static Connection conn = null;
	// 定一个静态的语句对象,用来执行sql语句
	// private static Statement stmt = null;
	// 定义一个静态的结果集对象用来存放执行sql语句后查询得到的结果
	// private static ResultSet rs = null;

	/**
	 * 连接数据库的方法
	 * 
	 * @return conn 返回一个连接对象
	 */
	public static Connection mssql(String url, String user, String pass) {
		Connection conn = null;
		try {
			// 1、加载连接驱动
			// "jdbc:odbc:bookdemo"
			Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
			// 2、连接到数据库(获得连接对象)
			// 通过连接管理器(DriverManager)类的一个方法来获得连接对象,里面的参数表示我们连接到数据源bookdemo
			conn = DriverManager.getConnection(url, user, pass);
		} catch (ClassNotFoundException e) {
			// 以堆栈的方式将错误信息打印出来
			e.printStackTrace();
		} catch (SQLException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}

		return conn; // 将连接对象返回
	}

	/**
	 * 连接数据库的方法
	 * 
	 * @return conn 返回一个连接对象
	 * @throws ClassNotFoundException
	 * @throws SQLException
	 */
	public static Connection mysql(String url, String user, String pass)
			throws ClassNotFoundException, SQLException {
		Connection conn = null;

		// 1、加载连接驱动
		// "jdbc:odbc:bookdemo"
		Class.forName("com.mysql.jdbc.Driver");
		// 2、连接到数据库(获得连接对象)
		// 通过连接管理器(DriverManager)类的一个方法来获得连接对象,里面的参数表示我们连接到数据源bookdemo
		conn = DriverManager.getConnection(url, user, pass);

		return conn; // 将连接对象返回
	}

	/**
	 * 动漫网的mysql数据库连接
	 * 
	 * @throws SQLException
	 * @throws ClassNotFoundException
	 */
	public static Connection mysql(String host, String database, String user,
			String pass) throws ClassNotFoundException, SQLException {
		String url = "jdbc:mysql://" + host + "/" + database
				+ "?useUnicode=true&characterEncoding=utf-8";
		return mysql(url, user, pass);
	}

	/**
	 * 本函数用来执行用户传入的sql语句(仅限于select语句)
	 * 
	 * @param sql
	 *            传入的sql语句,等待执行
	 * @return 返回执行sql语句后的结果集对象
	 */
	public static ResultSet query(Connection conn, String sql) {
		ResultSet rs = null;
		try {
			// 3、通过连接对象创建一个语句对象stmt,用来执行sql语句
			Statement stmt = conn.createStatement();
			// 4、执行sql语句,得到一个rs(结果集对象)
			rs = stmt.executeQuery(sql);
		} catch (Exception e) { // 错误处理,暂时不用理会
			e.printStackTrace();
		}
		return rs; // 将查询得到的结果集对象返回
	}

	/**
	 * 本方法用来执行更新语句,并返回影响了多少行(insert,update,delete)
	 * 
	 * @param sql
	 *            传入的sql语句,等待执行
	 * @return 返回执行sql语句后的结果集对象
	 */
	public static int update(Connection conn, String sql) {
		// 执行sql语句前先连接到数据库
		Statement stmt = null;
		int i = 0;
		try {
			// 通过连接对象创建一个语句对象stmt,用来执行sql语句
			stmt = conn.createStatement();
			// 执行更新语句,并返回影响了多少行
			i = stmt.executeUpdate(sql);
		} catch (Exception e) { // 错误处理,暂时不用理会
			e.printStackTrace();
		} finally {
			try {
				stmt.close();
			} catch (SQLException e) {
				// TODO Auto-generated catch block
				e.printStackTrace();
			}
		}
		return i;
	}

	public static void close(Connection conn, Statement stmt, ResultSet rs) {

		try {
			if (rs != null) {
				rs.close();
				rs = null;
			}
			if (stmt != null) {
				stmt.close();
				stmt = null;
			}
			if (conn != null) {
				conn.close();
				conn = null;
			}
		} catch (SQLException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
	}
}
最近下载更多
jaonsang  LV25 2019年10月26日
idcomcn2003  LV5 2019年4月2日
jiajia0524  LV2 2018年9月1日
wgtgt  LV24 2017年9月9日
Fshenye  LV1 2017年8月9日
淋湿巴黎mh  LV2 2016年11月4日
inhv  LV18 2016年4月15日
ivan747  LV7 2015年12月31日
zhangdashu  LV1 2015年12月1日
勇往直前  LV10 2015年6月24日
最近浏览更多
婆婆12254  LV2 2023年6月12日
122378  LV3 2022年12月14日
wangjie49  LV7 2022年10月1日
接小兔兔回家 2021年12月3日
暂无贡献等级
马牛逼  LV1 2020年12月30日
1771658781  LV5 2020年12月17日
j_heyao  LV1 2020年9月29日
zhangtian1997  LV10 2020年7月13日
cuimeng991226  LV1 2020年5月13日
gf12345678  LV5 2020年5月11日
顶部 客服 微信二维码 底部
>扫描二维码关注最代码为好友扫描二维码关注最代码为好友