java实现数据库连接,java数据库的连接

  java实现数据库连接,java数据库的连接

  首先说明,由于是8版本的数据库,所以配置类的写法上与5版本的有所区别,需要注意,同时用想法或黯然失色时需要导入冲突包,罐子包的下载链接:

  德夫街https://号。MySQL。com/get/archives/MySQL-connector-Java-8.0/MySQL-connector-Java-8。0 .28 .活力

  如果想要下载8版本不同的冲突包只需要修改8.0.28为指定版本即可。

  想法导入冲突包的方法如下:

  然后是代码部分,首先先建表:

  创建表` train _ message `(` id ` int NOT NULL AUTO _ INCREMENT COMMENT 主键id , train _ name varchar(20)不为空注释列车名, origin varchar(30)不为空注释始发地, terminal varchar(30)不为空注释终到地,`出发时间`时间戳不为空注释出站时间, state varchar(10)字符集 utf8 COLLATE utf8 _ general _ ci NOT NULL DEFAULT 正常评论列车状态,主键(` id `))ENGINE=InnoDB AUTO _ INCREMENT=9 DEFAULT CHARSET=utf8mb 3然后创建连接的配置类DbConfig.java,本地主机是本机的互联网协议(互联网协议的缩写)地址,如果有服务器就填服务器的互联网协议(互联网协议的缩写)地址,消息是数据库的名字,这里一张图说下有很多新手误解的名字

  导入Java。SQL。连接;导入Java。SQL。司机经理;导入Java。SQL。SQL异常;/** * 数据库配置类* @作者景苒*/public class DbConfig { public Connection DbConfig()抛出SQLException { try { class。forname( com。MySQL。CJ。JDBC。司机’);} catch(异常e){ system。出去。打印(加载驱动失败!);e . printstacktrace();} String URL= JDBC :我的SQL ://localhost :3306/message?use SSL=false use unicode=true character encoding=utf-8 server time zone=GMT 8 allowpublickeyretrieval=true ;字符串用户= root字符串密码= 123456 ;返回司机经理。getconnection(URL,用户,密码);}}然后写下主函数Main.java,这里主函数的函数体可以在最后再写,需要什么功能就把注释打开就好,快捷注释的方法,选中这句话,按计算机的计算机的ctrl按键按键加/,就能全注释了。

  导入Java。SQL。SQL异常;/** * 主函数,调用功能* @作者景苒*/public class Main { public static void Main(String[]args)引发处理

   {// new GetMessage().getMessage();// new UpdateTrainState().updateTrainState();// new InsertTrain().insertTrain();// new GetNumber().getNumber(); }}然后是每个的功能:

  

1.查询沈阳到武汉的所有列车信息,按出发时间先后排序

建GetMessage.java类

 

  

import java.sql.Connection;import java.sql.PreparedStatement;import java.sql.ResultSet;import java.sql.SQLException;/** * 查询沈阳到武汉的所有列车信息,按出发时间先后排序 * @author 景苒 */public class GetMessage { public void getMessage() throws SQLException { Connection con = new DbConfig().dbConfig(); String sql = "select * from `train_message` where origin = ? and terminal = ? ORDER BY departure_time ASC"; String origin = "沈阳"; String terminal = "武汉"; PreparedStatement ps = con.prepareStatement(sql); ps.setString(1, origin); ps.setString(2, terminal); ResultSet rs = ps.executeQuery(); try { while (rs.next()) { System.out.println("列车名:" + rs.getString("train_name") + " 始发站:" + rs.getString("origin") + " 终到站:" + rs.getString("terminal") + " 出发时间:" + rs.getString("departure_time") + " 列车状态:" + rs.getString("state")); } }catch (SQLException e) { e.printStackTrace(); }finally { ps.close(); con.close(); } }}

2.修改T2255列车的状态为停运

建UpdateTrainState.java类

 

  

import java.sql.Connection;import java.sql.SQLException;import java.sql.Statement;/** * 修改T2255列车的状态为停运 * @author 景苒 */public class UpdateTrainState { public void updateTrainState() throws SQLException { Connection con = new DbConfig().dbConfig(); String sql = "UPDATE `train_message` SET state = 停运 WHERE train_name = T2255"; Statement statement = con.createStatement(); try { int i = statement.executeUpdate(sql); if (i > 0) { System.out.println("更新成功"); }else { System.out.println("更新失败"); } }catch (SQLException e) { e.printStackTrace(); }finally { statement.close(); con.close(); } }}

3.新增一辆列车信息(自己输入)

建InsertTrain.java类

 

  

import java.sql.Connection;import java.sql.PreparedStatement;import java.sql.SQLException;import java.util.Scanner;/** * 新增一辆列车信息(自己输入) * 始发时间为timestamp类型,输入时需要确保格式正确,如:2019-01-01 00:00:00 * @author 景苒 */public class InsertTrain { public void insertTrain() throws SQLException { Connection con = new DbConfig().dbConfig(); Scanner scanner = new Scanner(System.in); String sql = "insert into `train_message` values(null, ?, ?, ?, ?, default)"; System.out.print("请输入列车名:"); String trainName = scanner.nextLine(); System.out.print("请输入始发站:"); String origin = scanner.nextLine(); System.out.print("请输入终到站:"); String terminal = scanner.nextLine(); System.out.print("请输入始发时间:"); String departureTime = scanner.nextLine(); PreparedStatement ps = con.prepareStatement(sql); ps.setString(1, trainName); ps.setString(2, origin); ps.setString(3, terminal); ps.setString(4, departureTime); try { int i = ps.executeUpdate(); if (i > 0) { System.out.println("添加成功"); }else { System.out.println("添加失败"); } }catch (SQLException e) { e.printStackTrace(); }finally { ps.close(); con.close(); } }}

4.查询状态为正常的列车数量

建GetNumber.java类

 

  

import java.sql.Statement;/** * 查询状态为正常的列车数量 * @author 景苒 */public class GetNumber { public void getNumber() throws SQLException { Connection con = new DbConfig().dbConfig(); String sql = "select count(state) from `train_message` where state = 正常"; Statement statement = con.createStatement(); try { ResultSet resultSet = statement.executeQuery(sql); while (resultSet.next()) { System.out.println("状态为正常的列车数量为:" + resultSet.getInt(1)); } }catch (SQLException e){ e.printStackTrace(); }finally { statement.close(); con.close(); } }}

最后附上navicat的属性结构图和样例插入的语句

 

  

 

  

 

  数据根据自己需求自行写入几个就行,以上就是java连接mysql数据库的实例代码,eclipse也大同小异,就导入jar包的方式不同。

  到此这篇关于Java连接MySQL数据库实例的文章就介绍到这了。希望对大家的学习有所帮助,也希望大家多多支持盛行IT。

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

相关文章阅读

  • 关系型数据库与非关系型数据库简介一样吗,关系型数据库非关系型数据库有哪些
  • 关系型数据库与非关系型数据库简介一样吗,关系型数据库非关系型数据库有哪些,关系型数据库与非关系型数据库简介
  • 关于redis数据库入门详细介绍图片,redis数据库的使用,关于Redis数据库入门详细介绍
  • 使用php连接mysql数据库,php连接数据库的方法
  • 使用php连接mysql数据库,php连接数据库的方法,一文详解PHP连接MySQL数据库的三种方式
  • 什么是分库分表,为什么要进行分库分表-,分库分表的区别,数据库分库分表是什么,什么情况下需要用分库分表
  • vb中adodb连接数据库,
  • treeview控件绑定数据,wpf treeview数据绑定,详解TreeView绑定数据库
  • sql的多表查询,数据库如何实现多表查询
  • SQL数据库的图形管理界面工具是,sql图形界面创建数据库
  • SQL数据库的图形管理界面工具是,sql图形界面创建数据库,SQLServer2019 数据库的基本使用之图形化界面操作的实现
  • sql数据库定时备份怎么弄,mysql 定期备份
  • sql数据库定时备份怎么弄,mysql 定期备份,MySQL 数据库定时备份的几种方式(全面)
  • sqlserver的nvarchar和varchar,数据库varchar和nvarchar
  • sqlserver的nvarchar和varchar,数据库varchar和nvarchar,SQL中varchar和nvarchar的基本介绍及其区别
  • 留言与评论(共有 条评论)
       
    验证码: