热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

javaidea连接mysql数据库简单实现

首先你得有个mysql账户,自己设置用户名和密码顺序,先下载mysql驱动下载地址下载完成后将解压后如下所示的.jar文件拖入lib包再右键添加为库。

首先你得有个 mysql 账户,自己设置用户名和密码


顺序,先下载 mysql 驱动 下载地址
下载完成后将解压后如下所示的 .jar 文件拖入 lib 包再右键添加为库。
在这里插入图片描述

再安装 Database Navigator 插件建立与 mysql 数据库的连接,连接参数(用户名和密码要填正确!)输入完后一定要按 Apply,只按确定成功不了。
在这里插入图片描述

如何完成的过程都在代码里,先看代码


这一段是对数据库操作的代码,首先定义一些与 mysql 相关参数,然后实现了简单的基本插入操作
更多操作可以在上面累加,比较容易


// MySql.java
package mydatabase;import java.sql.*;public class MySql {// 定义数据库连接 urlprivate String dburl = null;// 定义数据库连接private Connection conn = null;// 定义数据返回结果集private ResultSet rs = null;// 定义数据库状态private PreparedStatement stmt = null;// 定义数据库用户名private String username = null;// 定义数据库连接密码private String password = null;// 定义数据库驱动方式private String dbdriver = null;// 设置数据库连接 url 的方法public void setDburl(String dburl){this.dburl = dburl;}// 返回当前实例数据库连接 urlpublic String getDburl(){return dburl;}// 设置数据库用户名的方法public void setUsername(String username){this.username = username;}// 返回当前实例化数据库用户名public String getUsername(){return username;}// 设置数据库连接的方法public void setPassword(String password){this.password = password;}// 返回当前实例结果集的方法public ResultSet getRs(){return rs;}// 设置当前实例结果集的方法public void setRs(ResultSet rs){this.rs = rs;}// 返回当前实例数据库连接密码public String getPassword(){return password;}// 设置数据库驱动方式的方法public void setDbdriver(String dbdriver){this.dbdriver = dbdriver;}// 返回当前实例数据库驱动方式的方法public String getDbdriver(){return dbdriver;}// 创建数据库连接的方法Connection CreateConnection(String dburl,String username,String password)throws Exception{setDburl(dburl);setUsername(username);setPassword(password);Class.forName(getDbdriver());// 根据数据库路径、用户名和密码创建连接并返回该连接return DriverManager.getConnection(dburl,username,password);}// 关闭结果集的方法public void CloseRS(){try{rs.close();}catch (SQLException e){System.out.println("关闭结果集时发生错误!");}}// 关闭状态的方法public void CloseStmt(){try{stmt.close();}catch (SQLException e){System.out.println("关闭状态时发生错误!");}}// 关闭连接的方法public void CloseConnection(){try{conn.close();}catch (SQLException e){System.out.println("关闭连接时发生错误!");}}// 根据参数执行插入操作void executeInsert(String id,String name)throws Exception {try {conn = CreateConnection(getDburl(), getUsername(), getPassword());stmt = conn.prepareStatement("insert into stu values(?,?)");stmt.setString(1, id);stmt.setString(2, name);stmt.executeUpdate();} catch (SQLException ex) {System.err.println(ex.getMessage());}}
}

下面是启动程序对 mysql 进行插入操作。


// StartMySql.java
package mydatabase;import java.sql.SQLException;
import java.util.Scanner;public class StartMySql {public static void main(String[] args) throws SQLException {MySql db = new MySql();db.setDburl("jdbc:mysql://localhost:3306/student?useSSL=false&allowPublicKeyRetrieval=true&serverTimezone=UTC");// mysql 老版驱动//db.setDbdriver("com.mysql.jdbc.Driver");// mysql 8.0 以上版本驱动db.setDbdriver("com.mysql.cj.jdbc.Driver");try {Scanner sc = new Scanner(System.in);System.out.print("mysql 用户名:");String username;username = sc.next();db.setUsername(username);System.out.print("mysql 密码:");String password;password = sc.next();db.setPassword(password);}catch(Exception e){System.err.print(e.getMessage());}String id,name;Scanner sc = new Scanner(System.in);System.out.print("请输入要插入的id:");id = sc.next();System.out.print("请输入要插入对应id的name:");name = sc.next();try {db.executeInsert(id,name);} catch (Exception e) {System.err.println(e.getMessage());}finally {db.CloseRS();db.CloseStmt();db.CloseConnection();}}
}

  • 运行程序后输入的用户名和密码要与自己 mysql 对应,否则会出现异常,导致执行插入命令失败

结果演示:
这是程序结果
在这里插入图片描述


你可以很容易地想到,用一个循环就可以实现一次性插入多条记录。


mysql 结果
在这里插入图片描述
插入成功!


推荐阅读
  • Iamtryingtomakeaclassthatwillreadatextfileofnamesintoanarray,thenreturnthatarra ... [详细]
  • Java太阳系小游戏分析和源码详解
    本文介绍了一个基于Java的太阳系小游戏的分析和源码详解。通过对面向对象的知识的学习和实践,作者实现了太阳系各行星绕太阳转的效果。文章详细介绍了游戏的设计思路和源码结构,包括工具类、常量、图片加载、面板等。通过这个小游戏的制作,读者可以巩固和应用所学的知识,如类的继承、方法的重载与重写、多态和封装等。 ... [详细]
  • 本文讨论了一个关于cuowu类的问题,作者在使用cuowu类时遇到了错误提示和使用AdjustmentListener的问题。文章提供了16个解决方案,并给出了两个可能导致错误的原因。 ... [详细]
  • Android源码深入理解JNI技术的概述和应用
    本文介绍了Android源码中的JNI技术,包括概述和应用。JNI是Java Native Interface的缩写,是一种技术,可以实现Java程序调用Native语言写的函数,以及Native程序调用Java层的函数。在Android平台上,JNI充当了连接Java世界和Native世界的桥梁。本文通过分析Android源码中的相关文件和位置,深入探讨了JNI技术在Android开发中的重要性和应用场景。 ... [详细]
  • 向QTextEdit拖放文件的方法及实现步骤
    本文介绍了在使用QTextEdit时如何实现拖放文件的功能,包括相关的方法和实现步骤。通过重写dragEnterEvent和dropEvent函数,并结合QMimeData和QUrl等类,可以轻松实现向QTextEdit拖放文件的功能。详细的代码实现和说明可以参考本文提供的示例代码。 ... [详细]
  • 开发笔记:加密&json&StringIO模块&BytesIO模块
    篇首语:本文由编程笔记#小编为大家整理,主要介绍了加密&json&StringIO模块&BytesIO模块相关的知识,希望对你有一定的参考价值。一、加密加密 ... [详细]
  • JavaSE笔试题-接口、抽象类、多态等问题解答
    本文解答了JavaSE笔试题中关于接口、抽象类、多态等问题。包括Math类的取整数方法、接口是否可继承、抽象类是否可实现接口、抽象类是否可继承具体类、抽象类中是否可以有静态main方法等问题。同时介绍了面向对象的特征,以及Java中实现多态的机制。 ... [详细]
  • Spring特性实现接口多类的动态调用详解
    本文详细介绍了如何使用Spring特性实现接口多类的动态调用。通过对Spring IoC容器的基础类BeanFactory和ApplicationContext的介绍,以及getBeansOfType方法的应用,解决了在实际工作中遇到的接口及多个实现类的问题。同时,文章还提到了SPI使用的不便之处,并介绍了借助ApplicationContext实现需求的方法。阅读本文,你将了解到Spring特性的实现原理和实际应用方式。 ... [详细]
  • 关键词:Golang, Cookie, 跟踪位置, net/http/cookiejar, package main, golang.org/x/net/publicsuffix, io/ioutil, log, net/http, net/http/cookiejar ... [详细]
  • 个人学习使用:谨慎参考1Client类importcom.thoughtworks.gauge.Step;importcom.thoughtworks.gauge.T ... [详细]
  • [大整数乘法] java代码实现
    本文介绍了使用java代码实现大整数乘法的过程,同时也涉及到大整数加法和大整数减法的计算方法。通过分治算法来提高计算效率,并对算法的时间复杂度进行了研究。详细代码实现请参考文章链接。 ... [详细]
  • 本文介绍了Android 7的学习笔记总结,包括最新的移动架构视频、大厂安卓面试真题和项目实战源码讲义。同时还分享了开源的完整内容,并提醒读者在使用FileProvider适配时要注意不同模块的AndroidManfiest.xml中配置的xml文件名必须不同,否则会出现问题。 ... [详细]
  • Go Cobra命令行工具入门教程
    本文介绍了Go语言实现的命令行工具Cobra的基本概念、安装方法和入门实践。Cobra被广泛应用于各种项目中,如Kubernetes、Hugo和Github CLI等。通过使用Cobra,我们可以快速创建命令行工具,适用于写测试脚本和各种服务的Admin CLI。文章还通过一个简单的demo演示了Cobra的使用方法。 ... [详细]
  • 本文讨论了在openwrt-17.01版本中,mt7628设备上初始化启动时eth0的mac地址总是随机生成的问题。每次随机生成的eth0的mac地址都会写到/sys/class/net/eth0/address目录下,而openwrt-17.01原版的SDK会根据随机生成的eth0的mac地址再生成eth0.1、eth0.2等,生成后的mac地址会保存在/etc/config/network下。 ... [详细]
  • 本文介绍了如何使用Express App提供静态文件,同时提到了一些不需要使用的文件,如package.json和/.ssh/known_hosts,并解释了为什么app.get('*')无法捕获所有请求以及为什么app.use(express.static(__dirname))可能会提供不需要的文件。 ... [详细]
author-avatar
飞天6585_439
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有