1、MySQL JDBC驱动下载

打开上面的下载地址,选择“Platform Independent”,然后下载tar.gz或zip格式的都行,之后解压出来得到Jdbc驱动(mysql-connector-java)的jar包,最后在项目中引用。

或者也可以Maven引用,Pom.xml中添加如下:

mysql

mysql-connector-java

5.1.35

2、创建示例数据库

1)创建数据库create database feedback;

use feedback;

2)创建数据库中用户CREATE USER sqluser IDENTIFIED BY 'sqluserpw';

grant usage on *.* to sqluser@localhost identified by 'sqluserpw';

grant all privileges on feedback.* to sqluser@localhost;

3)创建示例表和数据CREATE TABLE comments (

id INT NOT NULL AUTO_INCREMENT,

MYUSER VARCHAR(30) NOT NULL,

EMAIL VARCHAR(30),

WEBPAGE VARCHAR(100) NOT NULL,

DATUM DATE NOT NULL,

SUMMARY VARCHAR(40) NOT NULL,

COMMENTS VARCHAR(400) NOT NULL,

PRIMARY KEY (ID)

);

INSERT INTO comments values (default, 'lars', 'myemail@gmail.com','https://www.cjavapy.com/', '2009-09-14 10:33:11', 'Summary','My first comment' );

3、通过JDBC驱动连接Mysql的示例代码

创建以下类以连接到MySQL数据库并执行查询,插入和删除。打印查询结果的元数据(表名,列名)import java.sql.Connection;

import java.sql.DriverManager;

import java.sql.PreparedStatement;

import java.sql.ResultSet;

import java.sql.SQLException;

import java.sql.Statement;

import java.util.Date;

public class MySQLAccess {

private Connection connect = null;

private Statement statement = null;

private PreparedStatement preparedStatement = null;

private ResultSet resultSet = null;

public void readDataBase() throws Exception {

try {

//将加载MySQL驱动程序,每个DB都有自己的驱动程序

Class.forName("com.mysql.jdbc.Driver");

//设置与数据库的连接

connect = DriverManager

.getConnection("jdbc:mysql://localhost/feedback?"

+ "user=sqluser&password=sqluserpw");

// Statements allow to issue SQL queries to the database

statement = connect.createStatement();

// Result set get the result of the SQL query

resultSet = statement

.executeQuery("select * from feedback.comments");

writeResultSet(resultSet);

// PreparedStatements can use variables and are more efficient

preparedStatement = connect

.prepareStatement("insert into feedback.comments values (default, ?, ?, ?, ? , ?, ?)");

// "myuser, webpage, datum, summary, COMMENTS from feedback.comments");

// Parameters start with 1

preparedStatement.setString(1, "Test");

preparedStatement.setString(2, "TestEmail");

preparedStatement.setString(3, "TestWebpage");

preparedStatement.setDate(4, new java.sql.Date(2009, 12, 11));

preparedStatement.setString(5, "TestSummary");

preparedStatement.setString(6, "TestComment");

preparedStatement.executeUpdate();

preparedStatement = connect

.prepareStatement("SELECT myuser, webpage, datum, summary, COMMENTS from feedback.comments");

resultSet = preparedStatement.executeQuery();

writeResultSet(resultSet);

//再次删除插入注释

preparedStatement = connect

.prepareStatement("delete from feedback.comments where myuser= ? ; ");

preparedStatement.setString(1, "Test");

preparedStatement.executeUpdate();

resultSet = statement

.executeQuery("select * from feedback.comments");

writeMetaData(resultSet);

} catch (Exception e) {

throw e;

} finally {

close();

}

}

private void writeMetaData(ResultSet resultSet) throws SQLException {

//现在从数据库中获取一些元数据

//结果集获取SQL查询的结果

System.out.println("The columns in the table are: ");

System.out.println("Table: " + resultSet.getMetaData().getTableName(1));

for (int i = 1; i<= resultSet.getMetaData().getColumnCount(); i++){

System.out.println("Column " +i + " "+ resultSet.getMetaData().getColumnName(i));

}

}

private void writeResultSet(ResultSet resultSet) throws SQLException {

// ResultSet is initially before the first data set

while (resultSet.next()) {

//可以通过名称获取列

//也可以通过列号获取列

//从1点开始

//例如resultSet.getSTring (2);

String user = resultSet.getString("myuser");

String website = resultSet.getString("webpage");

String summary = resultSet.getString("summary");

Date date = resultSet.getDate("datum");

String comment = resultSet.getString("comments");

System.out.println("User: " + user);

System.out.println("Website: " + website);

System.out.println("summary: " + summary);

System.out.println("Date: " + date);

System.out.println("Comment: " + comment);

}

}

// You need to close the resultSet

private void close() {

try {

if (resultSet != null) {

resultSet.close();

}

if (statement != null) {

statement.close();

}

if (connect != null) {

connect.close();

}

} catch (Exception e) {

}

}

}

执行上面的示例代码public class Main {

public static void main(String[] args) throws Exception {

MySQLAccess dao = new MySQLAccess();

dao.readDataBase();

}

}

jdbc连接mysql数据库驱动下载_Java Jdbc驱动下载配置连接mysql数据库方法代码相关推荐

  1. java mysql 源码分析_JAVA JDBC(MySQL)驱动源码分析

    JAVA连接数据库是其众多功能中的一部分,主要有两种方式连接DataBase: 一种是采用JDBC-ODBC桥,另一种则是称之为纯驱动连接DataBase,第一种方式在大型项目中基本上不再使用,本系列 ...

  2. mysql java 驱动 版本号_Java - 云原生数仓 AnalyticDB MySQL - 阿里云

    本文介绍如何在Java中通过MySQL JDBC连接AnalyticDB for MySQL集群. MySQL JDBC驱动版本 AnalyticDB for MySQL支持以下版本的MySQL JD ...

  3. rails mysql 环境搭建_windows上Rails3环境的配置包括mysql数据库的配置说明

    http://railsinstaller.org/这个集成的安装基本上装的都是比较新的东西了.安装过过程很简单,就像在windows安装其它软件一样,跟着提示一步一步就可以了,它默认安装在C:\Ra ...

  4. mysql 开源入门_入门教程:安装配置新版MySQL 8开源数据库

    原标题:入门教程:安装配置新版MySQL 8开源数据库 [ 来自IT168] [IT168 技术]MySQL是现代应用程序编程堆栈中常见的数据库管理系统.如果您想要一个适用于您应用程序的,便于利用丰富 ...

  5. java多线程下载_Java实现多线程下载,支持断点续传

    多线程下载及断点续传的实现是使用 HTTP/1.1 引入的 Range 请求参数,可以访问Web资源的指定区间的内容.虽然实现了多线程及断点续传,但还有很多不完善的地方. 包含四个类: Downloa ...

  6. Mybatis连接池介绍与分类 Mybatis使用POOLED UNPOOLED配置连接池的原理分析

    一.连接池 1.概念:其实就是一个容器(集合),存放数据库连接的容器. 当系统初始化好后,容器被创建,容器中会申请一些连接对象,当用户来访问数据库时,从容器中获取连接对象,用户访问完之后,会将连接对象 ...

  7. java禁止数据库写入事务_Java -- JDBC 事务处理, 事务的隔离级别 脏读 不可重复读 等......

    1. 事务指逻辑上的一组操作,组成这组操作的各个单元,要不全部成功,要不全部不成功. 数据库开启事务命令 •start transaction开启事务 •Rollback 回滚事务 •Commit 提 ...

  8. mysql jdbc怎么用问号传参_java – jdbc PreparedStatement中的问号问题

    我来回浏览互联网,发现我的问题无法解决. 我试图使用参数绑定与jdbc查询mysql表,但它在我的语句中不断报告问号的语法错误. 这是我的班级: package todoList_; import j ...

  9. java 注册驱动失败_java – JDBC驱动程序注册死锁?

    在一个线程中,正在创建一个JackRabbit: "docs-on-startup" #32 prio=5 os_prio=0 tid=0x00007f730d73e800 nid ...

最新文章

  1. 《Android的设计与实现:卷I》——第2章 框架基础JNI
  2. 从0到1开发实战手机站(二):Git提交规范配置
  3. 【微信小程序】给绑定事件传参数
  4. SAP Spartacus 重用组件cx-table的设计原理
  5. PHP3d地球,three.js绘制地球、飞机与轨迹的效果示例
  6. Oracle 数据怎么实时同步到 Elasticsearch | 亲测干货建议收藏
  7. Makefile 中:= ?= += =的差别 和条件运行
  8. android开不了机怎么办手机号码,手机开不了机怎么办 原因分析及其解决方法
  9. TCP模块如何处理连接包
  10. poj3254:基础状压dp
  11. VUE 自定义取色器组件
  12. golang php mysql性能_golang vs dlang vs nodejs vs php 性能对比较量
  13. GDK7+NanoCode调试学习系列1--环境搭建
  14. HDU6357 Hills And Valleys
  15. 侯捷C++->构造函数
  16. ASUS 华硕 NX580V 飞行堡垒 安装WIN7系统教程
  17. 第十六周上机实践—项目2—大数据集上排序算法性能的体验
  18. 笔记:OpenCV之眨眼检测
  19. SpringCloudAlibaba实现<实名认证-身份证二要素>
  20. MyBatis缓存机制之一级缓存

热门文章

  1. android手机蓝屏代码,android手机进入蓝屏蓝屏怎么关机
  2. XVID解码器不弹出status窗口的办法
  3. CM阿里云安装Cloudera Mananger
  4. iPad2 iOS5.1.1完美越狱教程(Absinthe2)
  5. 详解多线程MT 和 MD
  6. 用CSS实现3D魔方动画旋转
  7. win7系统一键还原功能怎么进行禁用教学分享
  8. 【淘宝SEO技巧】解读淘宝新规及SEO技术实战指南
  9. QML Canvas 绘制总结
  10. 设置源码解析--Uim/Sim卡锁定