当前位置: 首页 > news >正文

Java连接MySQL数据库

环境准备

  1. 安装Java开发工具包 (JDK) : 确保你的系统已安装JDK,并配置了环境变量,以便能够在命令行中运行 java和 javac命令。
  2. 安装MySQL数据库: 在你的系统上安装MySQL服务器,并确保它正在运行。创建一个数据库以及一个拥有访问权限的用户。
  3. 下载MySQL JDBC驱动: JDBC是Java Database Connectivity的缩写,它是一种用于执行SQL语句的Java API。下载最新版本的MySQL JDBC驱动(通常是一个 .jar文件),并将其添加到项目类路径中。

数据库连接步骤

  1. 加载JDBC驱动:

    Class.forName("com.mysql.cj.jdbc.Driver");
  2. 建立连接:

    String url = "jdbc:mysql://localhost:3306/yourDatabaseName?useSSL=false";
    String user = "yourUsername";
    String password = "yourPassword";try (Connection conn = DriverManager.getConnection(url, user, password)) {// 使用conn创建语句和执行查询} catch (SQLException e) {e.printStackTrace();}
  3. 执行SQL查询:

  4. 使用Statement或PreparedStatement对象来准备并执行SQL语句。

  5. 处理ResultSet结果集以获取数据。

6 关闭ResultSet、Statement对象及Connection连接。

示例代码

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;public class MySQLAccess {private Connection connect() throws SQLException {return DriverManager.getConnection("jdbc:mysql://localhost:3306/yourDatabaseName?useSSL=false", "yourUsername", "yourPassword");}public void readDataBase() throws SQLException {try (Connection connection = connect()) {PreparedStatement preparedStatement =connection.prepareStatement("SELECT * FROM yourTableName");ResultSet resultSet = preparedStatement.executeQuery();while(resultSet.next()) {// 处理结果集...int idColumnValue= resultSet.getInt("idColumnName");String stringColumnValue= resultSet.getString("stringColumnName");System.out.println(idColumnValue + ", "+ stringColumnValue);}// 清理环境资源resultSet.close();preparedStatement.close();} catch(SQLException e) { throw new RuntimeException(e);}}public static void main(String[] args) throws Exception{MySQLAccess dao=new MySQLAccess();dao.readDataBase();  }
}

确保替换上述代码中 localhost3306youDatabaseNameyouTableNameidColumnName,stringColumnName,youUsername,youPassword.

http://www.gsyq.cn/news/19401.html

相关文章:

  • Git版本控制工具合并分支merge命令操作流程
  • 第七章 手写数字识别(终)
  • 2025年AI内容安全产品选型指南:为何需要专业的AI安全围栏(AI-FOCUS团队鉴冰AI FENCE)?
  • 2025液压阀块厂家权威推荐榜:精密加工与直销优势深度解析
  • 2025焊接变位机厂家权威推荐榜:高效稳定与精准操控口碑之选
  • 重装系统后实况足球pes2021需要安装的文件
  • 2025防水包胶连接器厂家权威推荐榜:密封防护与耐用品质深度
  • 大语言模型真的需要那么多层吗?
  • 2025年微滤机厂家最新权威推荐榜:高效过滤与技术创新口碑之
  • 上海寿衣厂家最新权威推荐榜:品质工艺与贴心服务口碑之选
  • Docker从网络管理到容器优化 - 详解
  • 潘院士高瞻远瞩:三大趋势勾勒中国AI发展路径,元人文构想恰逢其时
  • 开源 C# 快速构建(七)通讯--串口
  • 2025新能源冲压件厂家权威推荐榜:技术革新与品质保障深度解
  • 2025国庆dp
  • 2025数控锯床厂家权威推荐榜:精密加工与高效生产口碑之选
  • Java集成SaToken构建登录
  • 实验室装修厂家最新权威推荐榜:专业设计与施工品质深度解析
  • 生成式AI在红队测试中的应用:构建自动化工具
  • ZR 2025 十一集训 Day 1
  • 2025广东粉末厂家最新权威推荐榜:技术实力与市场口碑深度解
  • 2025年成都软件开发机构最新推荐排行榜,涵CRM,物联网,运维,仓储,人力多系统,技术实力与市场口碑深度解析
  • 语文_作文_开头结尾
  • 2025智能吉他厂家最新权威推荐榜:创新科技与卓越音质完美融
  • 2025景区售票系统厂家最新权威推荐榜:智慧票务与高效管理口
  • 对我学过的算法的一些总结
  • Java二维数组
  • 在Ubuntu系统上设置syslog日志轮替与大小限制
  • 从 “有人值守” 到 “少人运维”:智能巡检机器人重塑配电室管理模式 - 实践
  • 2025年10月最新推荐卫星电话品牌发布,涵防爆对讲卫星电话,卫星电话应急指挥系统,卫星电话防爆对讲终端,防爆手持卫星电话!