JDBC纯驱动方式连接MySQL
1 新建一个名为MysqlDemo的JavaProject
2 从http://dev.mysql.com/downloads/connector/j/中下载最新的驱动包。
这里有.tar.gz和.zip两种格式的包,因为在windows下都可以解压缩,随便下一个都行。
3 将下载的驱动包解压缩后,将MySQL-connector-Java-5.1.38-bin.jar拷贝到项目中
4 在项目中建立一个名为MysqlDemo的Java类
5 在MysqlDemo.java中编写代码
- package com.abc;
- importjava.sql.DriverManager;
- importjava.sql.ResultSet;
- importjava.sql.SQLException;
- importjava.sql.Connection;
- importjava.sql.Statement;
- publicclass MysqlDemo {
- publicstaticvoid main(String[] args) throws Exception {
- Connection conn = null;
- String sql;
- // MySQL的JDBC URL编写方式:jdbc:mysql://主机名称:连接端口/数据库的名称?参数=值
- // 避免中文乱码要指定useUnicode和characterEncoding
- String url = "jdbc:mysql://localhost:3306/test?"
- + "user=root&password=123456&useUnicode=true&characterEncoding=UTF8";
- try {
- // 之所以要使用下面这条语句,是因为要使用MySQL的驱动,所以我们要把它驱动起来,
- // 可以通过Class.forName把它加载进去,也可以通过初始化来驱动起来,下面三种形式都可以
- Class.forName("com.mysql.jdbc.Driver");// 动态加载mysql驱动
- // or:
- // com.mysql.jdbc.Driver driver = new com.mysql.jdbc.Driver();
- // or:
- // new com.mysql.jdbc.Driver();
- System.out.println("成功加载MySQL驱动程序");
- // 一个Connection代表一个数据库连接
- conn = DriverManager.getConnection(url);
- // Statement里面带有很多方法,比如executeUpdate可以实现插入,更新和删除等
- Statement stmt = conn.createStatement();
- sql = "createtable student(NO char(20),name varchar(20),primary key(NO))";
- intresult = stmt.executeUpdate(sql);// executeUpdate语句会返回一个受影响的行数,如果返回-1就没有成功
- if (result != -1) {
- System.out.println("创建数据表成功");
- sql = "insert into student(NO,name) values('2016001','刘大')";
- result = stmt.executeUpdate(sql);
- sql = "insert into student(NO,name) values('2016002','陈二')";
- result = stmt.executeUpdate(sql);
- sql = "select * from student";
- ResultSet rs = stmt.executeQuery(sql);// executeQuery会返回结果的集合,否则返回空值
- System.out.println("学号\t姓名");
- while (rs.next()) {
- System.out.println(rs.getString(1)+ "\t" + rs.getString(2));// 入如果返回的是int类型可以用getInt()
- }
- }
- } catch(SQLException e) {
- System.out.println("MySQL操作错误");
- e.printStackTrace();
- } catch (Exception e) {
- e.printStackTrace();
- } finally {
- conn.close();
- }
- }
- }
运行结果:
JDBC纯驱动方式连接MySQL的更多相关文章
- Java笔记4:JDBC纯驱动方式连接Oracle
JDBC纯驱动方式连接Oracle 1 下载Oracle提供的驱动程序包 下载地址: http://www.oracle.com/technetwork/database/enterprise-edi ...
- mysql——jdbc驱动下载&连接mysql例子
mysql-connector-java-5.1.46.zip[解压后里面jar文件就是所需要的] https://dev.mysql.com/get/Downloads/Connector-J/my ...
- jmeter中通过jdbc方式连接mysql数据库的配置参考
jmeter中通过jdbc方式连接mysql数据库的配置参考: Database URL=jdbc:mysql://ip:port/dbname?useUnicode=true&allowMu ...
- Spark JDBC方式连接MySQL数据库
Spark JDBC方式连接MySQL数据库 一.JDBC connection properties(属性名称和含义) 二.spark jdbc read MySQL 三.jdbc(url: Str ...
- java jdbc使用SSH隧道连接mysql数据库demo
java jdbc使用SSH隧道连接mysql数据库demo 本文链接:https://blog.csdn.net/earbao/article/details/50216999 packag ...
- Navicat 或者Java的JDBC通过SSH Tunnel连接MySQL数据库
JDBC通过SSH Tunnel连接MySQL数据库 - 明明 - CSDN博客https://blog.csdn.net/a351945755/article/details/21782693 Na ...
- 使用tomcat的jndi方式连接mysql的字符编码设置
最近新项目使用tomcat中配置jndi连接mysql的方式,在使用过程中发现查询条件为中文的时候查询不出结果,经过一通折腾,发现是jndi在连接数据库的时候忘记设置字符编码. 修改之后的完整配置如下 ...
- Delphi XE8中的DBExpress使用ODBC方式连接MySQL 5.6.24 X64!!!!
Delphi:XE2.XE8 MySQL:5.6.24 X64 今天准备做一个使用数据库的REST程序,最开始使用XE2,后来使用XE8,但是我遇到一个让我头疼的问题,就是无法连接我要使用的数据库,这 ...
- Asp.net Mvc 使用EF6 code first 方式连接MySQL总结
最近由于服务器变更为Linux系统.MsSql for Linux什么时候出来到生产环境使用还是要很长时间的.于是考虑使用Mysql数据库,ORM使用EF.于是先踩下坑顺便记录一下,有需要的tx可以参 ...
随机推荐
- hdu 3081(二分+并查集+最大流||二分图匹配)
Marriage Match II Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others ...
- 辨析各类web服务器:Apache/Tomcat/Jboss/Nginx/等,还有Nodejs
先说一下各类服务器能干啥,特点是啥,然后在区分他们的类别. (1)Apache: Apache是指Apache软件基金会的Apache HTTP Server, 它能够接收http请求,然后返回各类资 ...
- Nmap误报1720端口开放的原因
在使用Nmap扫描服务器开放端口(全连接扫描)时,一直会发现误报1720端口开放,telnet也有时会连接成功.而实际上服务器并未开启此端口.经过查阅资料,确定原因如下: H.323协议在负载中放入了 ...
- 五十四 网络编程 TCP编程
Socket是网络编程的一个抽象概念.通常我们用一个Socket表示“打开了一个网络链接”,而打开一个Socket需要知道目标计算机的IP地址和端口号,再指定协议类型即可. 客户端 大多数连接都是可靠 ...
- urllib2模块、cookielib模块
urllib2模块 urllib模块和urllib模块类似,用来打开URL并从中获取数据.与urllib模块不同的是,urllib模块不仅可以使用urlopen() 函数还可以自定义Opener来访问 ...
- CF1025C Plasticine zebra【环状字符串/思维】
给你一个长度为 \(\left|s\right|\) 的01串 \(s\) ,每次操作你可以任选一个 \(k\) ,使01串的 \([1,k]\) 和 \((k,\left|s\right|]\) 分 ...
- Python开发基础-Day3-列表、元组和字典
列表 列表定义:[]内以逗号分隔,按照索引,存放各种数据类型,每个位置代表一个元素 特性: 1.可存放多个值 2.可修改指定索引位置对应的值,可变 3.按照从左到右的顺序定义列表元素,下标从0开始顺序 ...
- Xamarin Android项目提示SDK版本太老
Xamarin Android项目提示SDK版本太老 错误信息:The installed Android SDK is too old.Version 24.3.4 or newer is requ ...
- JZYZOJ1518 [haoi2011]b 莫比乌斯反演 分块 容斥
http://172.20.6.3/Problem_Show.asp?id=1518最开始只想到了n^2的写法,肯定要超时的,所以要对求gcd的过程进行优化.首先是前缀和容斥,很好理解.第二个优化大致 ...
- 【贪心】AtCoder Grand Contest 018 B - Sports Festival
假设我们一开始选取所有的运动项目,然后每一轮将当前选择人数最多的运动项目从我们当前的项目集合中删除,尝试更新答案.容易发现只有这样答案才可能变优,如果不动当前选取人数最多的项目,答案就不可能变优. 我 ...