模板:JDBC 连接 MySQL 数据库

devtools/2024/9/22 19:26:10/

JDBC 连接 MySQL 数据库的代码不尽相同,这里提供以下几种模板,直接复制并简单修改参数即可(前面的新建项目等步骤要准备好);

第一种:
java">import java.sql.*;public class JdbcTest {//记得类名与文件名保持一致//1.加载jdbc连接mysql的驱动public final static String driver="com.mysql.cj.jdbc.Driver";//2.连接MySQL数据库的地址public final static String url="jdbc:mysql://localhost:3306/shangguigu";//shangguigu为数据库名称//3.连接MySQL的用户名public final static String user="root";//4.连接MySQL的密码public final static String pwd="xxxxx";//输入自己数据库的密码//static 静态代码加载 jdbc 的驱动static {try{Class.forName(driver);} catch (ClassNotFoundException e) {throw new RuntimeException(e);}}//连接MySQL的连接对象public static Connection getConn(){try{return DriverManager.getConnection(url,user,pwd);} catch (SQLException e){e.printStackTrace();}return null;}//关闭连接,保证MySQL资源的释放,能够充分利用资源public static void close(ResultSet rs, PreparedStatement ps,Connection conn){try{if (rs != null){rs.close();}if (ps != null){ps.close();}if (conn != null){conn.close();}} catch (SQLException e) {throw new RuntimeException(e);}}//验证public static void main(String[] args) {System.out.println(getConn());}
}

 结果为一个地址,则连接成功;

java">C:\Java\jdk-17.0.11\bin\java.exe "-javaagent:C:\Program Files\JetBrains\IntelliJ IDEA 2022.1.3\lib\idea_rt.jar=14436:C:\Program Files\JetBrains\IntelliJ IDEA 2022.1.3\bin" -Dfile.encoding=UTF-8 -classpath "C:\Test\java _test\jdbc_test0917\out\production\jdbc_test0917;C:\Test\java _test\jdbc_test0917\lib\mysql-connector-java-8.0.26.jar" JdbcTest
com.mysql.cj.jdbc.ConnectionImpl@3023df74进程已结束,退出代码0
第二种: 
java">import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.Statement;public class JavaCon {public static void main(String[] args) throws Exception {//注册驱动Class.forName("com.mysql.cj.jdbc.Driver");//获取连接对象String url="jdbc:mysql://localhost:3306/shangguigu";//3306/ 后面是连接的数据库的名字String username="root";String password="xxxxxx";// 填入自己数据库的密码Connection connection= DriverManager.getConnection(url,username,password);//获取执行SQL语句的对象Statement statement=connection.createStatement();//编写Sql语句,执行并返回结果集String sql=" select emp_id,emp_name,emp_salary,emp_age from t_emp";// 输入要查询的字段ResultSet resultSet=statement.executeQuery(sql);//处理结果,遍历 resultSet 结果集while (resultSet.next()){  //根据字段的名字和数据类型进行修改int id=resultSet.getInt("emp_id");String na=resultSet.getString("emp_name");String salary=resultSet.getString("emp_salary");int age=resultSet.getInt("emp_age");System.out.println(id+"\t"+na+"\t"+salary+"\t"+age);}//释放资源(先开后关)resultSet.close();statement.close();connection.close();}
}

结果为查询表格的内容,则连接成功:

java">C:\Java\jdk-17.0.11\bin\java.exe "-javaagent:C:\Program Files\JetBrains\IntelliJ IDEA 2022.1.3\lib\idea_rt.jar=3911:C:\Program Files\JetBrains\IntelliJ IDEA 2022.1.3\bin" -Dfile.encoding=UTF-8 -classpath "C:\Test\java _test\jdbc-test9\out\production\jdbc-test9;C:\Test\java _test\jdbc-test9\lib\mysql-connector-java-8.0.26.jar" JDBC.JavaCon
1	王	8.1	6
2	李	9.3	1
3	张	7.5	2进程已结束,退出代码0

http://www.ppmy.cn/devtools/115614.html

相关文章

深度学习02-pytorch-08-自动微分模块

​​​​​​​ 其实自动微分模块,就是求相当于机器学习中的线性回归损失函数的导数。就是求梯度。 反向传播的目的: 更新参数, 所以会使用到自动微分模块。 神经网络传输的数据都是 float32 类型。 案例1: 代码功能概述: 该…

染色算法的简单概述

问题1 问题描述 染色算法很简单。如果想知道 k 个寄存器够不够用,你只需要找到一个少于 k 条边的节点,把它从图中去掉。接着再找下一个少于 k 条边的节点,再去掉。如果最后整个图都被删掉了,那么这个图一定可以用 k 种颜色来染色…

模仿抖音用户ID加密ID的算法MB4E,提高自己平台ID安全性

先看抖音的格式 对ID加密的格式 MB4EENgLILJPeQKhJht-rjcc6y0ECMk_RGTceg6JBAA 需求是 同一个ID 比如 413884936367560 每次获取得到的加密ID都是不同的,最终解密的ID都是413884936367560 注意这是一个加密后可解密原文的方式,不是单向加密 那么如下进行…

软件卸载工具(windows系统)-geek

有时候软件卸载会很麻烦,使用geek会比较方便。但是针对一些特别大的软件,geek也好像会稍微费点劲(比如MATLAB2022A),不过针对一般常规软件的卸载,geek就可以有效地完全卸载了,使用方法也很简单,…

NoSql数据库Redis知识点

数据库的分类 关系型数据库 ,是建立在关系模型基础上的数据库,其借助于集合代数等数学概念和方法来处理数据库 中的数据主流的 MySQL 、 Oracle 、 MS SQL Server 和 DB2 都属于这类传统数据库。 NoSQL 数据库 ,全称为 Not Only SQL &a…

10年408考研真题-数据结构

23.[2010统考真题]若元素 a,b,c,d,e,f 依次进栈,允许进栈、退栈操作交替进行,但不允许连续3次进行退栈操作,不可能得到的出栈序列是(D)。 A.dcebfa B.cbdaef C.bcaefd D.afedcb 解析: 直接看D选项&#xff0…

数据结构 第三章 栈和队列 练习题3.2.5 表达式求值 C语言代码

本代码没有处理某个数字为负数的情况,感兴趣的小伙伴可以分享自己的思路和代码 #include <stdio.h> #include <stdlib.h> #include <ctype.h>#define MAX_SIZE 100int numStk[MAX_SIZE], num_hh 0; char opStk[MAX_SIZE], op_hh 0;// (1)Stack creation a…

笔记:DrawingContext和GDI+对比简介

一、目的&#xff1a;分享一个wpf中级控件&#xff0c;鼠标放上展开其他控件的效果 DrawingContext 和 GDI 的 Graphics 类都是用于绘图的技术&#xff0c;但它们属于不同的图形库和框架&#xff0c;适用于不同的场景。让我们详细比较一下这两者。 二、对比 DrawingContext Dra…