前言:
使用版本:eclipse2017,mysql5.7.0,MySQL的jar建议使用最新的,可以避免警告!
1:下载安装:eclipse,mysql在我之前博客中有
http://t.csdnimg.cn/UW5fshttp://t.csdnimg.cn/UW5fs
2:MySQL下载网址是:MySQL :: Download MySQL Installerhttps://dev.mysql.com/downloads/installer/
3:下载jdbc
1.这是下载jdbc的网址:MySQL :: MySQL Connectorshttps://www.mysql.com/products/connector/
这三项下载好后,进行eclipse连接MySQL的第一步:导入依赖包
Window-preferences-java-Build Path-User Libraries
项目中查看:
建立一个数据库连接类:DBHelper
数据库名字和表名字要根据自己实际的来:
package com.ks.lya.dbh;import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.ResultSetMetaData;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.List;public class DBHelper {// 加载数据库驱动private static String dbdriver = "com.mysql.jdbc.Driver";// 获取mysql连接地址private static String dburl = "jdbc:mysql://localhost:3306/mybatis_ssm?useUnicode=true&characterEncoding=UTF-8&useSSL=false&rewriteBatchedStatements=true";// 数据名称private static String username = "root";// 数据库密码private static String userpassword = "123456";/*** 获取数据库连接* * @return 数据库连接对象*/private static Connection getConnection() {Connection conn = null;try {Class.forName(dbdriver);conn = DriverManager.getConnection(dburl, username, userpassword);} catch (ClassNotFoundException | SQLException e) {e.printStackTrace();}return conn;}/*** 关闭数据库连接* * @param rs 查询结果集* @param ps 预编译语句对象* @param conn 数据库连接对象*/private static void closeAll(ResultSet rs, PreparedStatement ps,Connection conn) {if (rs != null) {try {rs.close();} catch (SQLException e) {e.printStackTrace();}}if (ps != null) {try {ps.close();} catch (SQLException e) {e.printStackTrace();}}if (conn != null) {try {conn.close();} catch (SQLException e) {e.printStackTrace();}}}/*** 查表,返回行的列表,每个列表中包含列的列表。* * @param sql 执行的SQL查询语句* @return 查询结果的二维列表*/public static List<List<Object>> getData(String sql) {Connection conn = null;PreparedStatement ps = null;ResultSet rs = null;List<List<Object>> list = new ArrayList<List<Object>>();try {conn = getConnection();ps = conn.prepareStatement(sql);rs = ps.executeQuery();ResultSetMetaData md = rs.getMetaData();int columnCount = md.getColumnCount();while (rs.next()) {List<Object> lst = new ArrayList<Object>();for (int i = 1; i <= columnCount; ++i) {lst.add(rs.getObject(i) == null ? "" : rs.getObject(i));}list.add(lst);}} catch (SQLException e) {e.printStackTrace();} finally {closeAll(rs, ps, conn);}return list;}public static void main(String[] args) throws SQLException {List<List<Object>> x = getData("select uname,upic from t_user_head");System.out.println("x=" + x);}
}
通过MySQL的客户端管理查出来的
连接成功!
什么一行是警告:表示使用的 MySQL 驱动类已经过时,建议使用新的驱动类 com.mysql.cj.jdbc.Driver
。
另外,请确保你的 MySQL 驱动包版本是最新的,以避免可能的兼容性问题。你可以从 MySQL 官方网站上下载最新的 MySQL 驱动程序。