eclipse连接mysql数据库(下载eclipse,下载安装mysql,下载mysql驱动)

前言:

使用版本: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 驱动程序。

相关推荐
!chen7 小时前
数据库主从有延迟怎么处理
数据库·adb
SelectDB技术团队7 小时前
Apache Doris 多云原生实践:SaaS、BYOC 与四大公有云覆盖
数据库·阿里云·云原生·华为云·腾讯云·亚马逊云·写入更新
云飞云共享云桌面9 小时前
医疗器械设备研发:多人同时操作 SolidWorks,怎样依靠单台服务器替代多工作站
运维·服务器·网络·数据库·制造
知行合一。。。14 小时前
RAG--03--Milvus基本用法
数据库·oracle·milvus
TDengine (老段)14 小时前
TDengine 线程模型 — 网络、调度、执行
大数据·数据库·物联网·制造·时序数据库·tdengine·涛思数据
上学的小垃圾15 小时前
01-数据库系统概述
数据库
二进制漫游记16 小时前
FastAPI项目集成 Qdrant向量数据库+阿里云Embedding完整实战(工具封装+业务调用)
数据库·python·阿里云·embedding
2501_9289962216 小时前
GPT-4o换DeepSeek迁移成本多少?中科热备解析API聚合平台技术账本
前端·数据库·人工智能
泡干脆面就番茄18 小时前
MySQL_子查询_分页查询与联合查询详解
数据库·mysql
devpotato19 小时前
缓存与数据库更新顺序不一致问题
java·数据库·redis