利用JDBC连接数据库(MySQL)
1 在eclipse中创建一个maven项目(在Java模式下,不要在JavaEE模式下)
1.1 file -->> new -->> project



2 下载数据库驱动包
2.1 在刚刚创建的项目中找到 pom.xml 并单击打开

2.2 选择 dependencies -->> add

2.3 在框中输入 mysql 敲一下回车,然后选择对应的版本后点击OK就行啦
(前提是你已经安装好了maven,并且已经在eclipse中进行了相应的配置)

依赖包下载成功后,在 pom.xml 文件中会显示相应的信息,也可以直接在 pom.xml 文件中添加代码来下载相应的驱动包

最后记得保存 pom.xml 文件
3 在maven项目中新建一个包,再在此包下新建一个类

4 JDBC知识
java数据库连接.
JDBC是JAVA提供的一套标准连接数据库的接口;规定了连接数据库的步骤和功能,
不同的数据库提供商提供了一套JDBC实现类;他们称为数据库驱动.
JDBC的主要接口有:
DriverManager : 用于加载驱动并建立数据库连接
Connection : 表示与特定数据库的连接会话
Statement : 用于执行SQL语句
ResultSet : 表示查询的结果集
通过JDBC操作数据库是自动进行提交的(当然可以进行手动关闭)
5 利用JDBC连接数据库的步骤
5.1 加载驱动包Cass.forName()
5.2 调用驱动建立连接:Connection -->> 生成类为:DriverManager
5.3 通过连接创建语句对象: Statement
5.4 执行SQL语句:Statement
5.5 若是查询语句会得到结果集:ResultSet
5.6 遍历结果集获取查询结果
5.7 关闭连接
6 实例之 -->> 创建一个表
package day01; import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.Statement; /**
* JDBC
* java数据库连接.
* JDBC是JAVA提供的一套标准连接数据库的接口;规定了连接数据库的步骤和功能,
* 不同的数据库提供商提供了一套JDBC实现类;他们称为数据库驱动.
* JDBC的主要接口有:
* DriverManager : 用于加载驱动并建立数据库连接
* Connection : 表示与特定数据库的连接会话
* Statement : 用于执行SQL语句
* ResultSet : 表示查询的结果集
* 通过JDBC操作数据库是自动进行提交的
* @author soft01
*
* 创建表
*
*/
public class Demo01 {
public static void main(String[] args){
/*
* 使用JDBC连接数据库的步骤:
* 1 加载驱动包Cass.forName()
* 2 调用驱动建立连接:Connection -->> 生成类为:DriverManager
* 3 通过连接创建语句对象: Statement
* 4 执行SQL语句:Statement
* 5 若是查询语句会得到结果集:ResultSet
* 6 遍历结果集获取查询结果
* 7 关闭连接
*/
try { /*
* 1 加载驱动包
* 不同数据库传入的字符串内容不一致
* 1.1 注意:
* 若抛出:java.lang.ClassNotFoundException通常有两种情况导致
* 1.1.1 没有在项目中导入驱动包
* 1.1.2 formatName方法中字符串格式有误
*/
Class.forName("com.mysql.jdbc.Driver"); //mysql驱动包的固定写法
System.out.println("驱动加载完毕。"); /*
* 2 通过DriverManager与数据库建立连接
* 使用静态方法getConnection, 要传入三个参数
* 参数1 数据库地址,不同数据库格式不同
* 参数2 数据库用户名
* 参数3 数据库密码
*/
Connection conn = DriverManager.getConnection(
"jdbc:mysql://localhost:3306/test", // jdbc:mysql:// + IP + : + 端口 + 数据库名称
"root", // 用户名
"182838"); // 用户密码
System.out.println("链接成功"); /*
* 3 创建语句对象
* Statement针对不同类型的SQL语句有不同的执行方法
* ResultSet executeQuery(String sql)
* 用来执行查询语句(SQL)的方法,返回的是一个查询结果集
*
* int executUpdate(String sql)
* 用来执行DML语句的方法,返回值为执行了该SQL后影响了数据库中多少条数据
*
* boolean execute(String sql)
* 可以执行所有类型的SQL语句,但是DQL,DML都有专门的方法,所以该方法通常
* 用来执行DDL语句.当返回值为true时表示该SQL语句执行后有结果集,没有结果集
* 的都是返回的false.(并不是根据语句的对错来返回true或者false)
*/
Statement state = conn.createStatement(); //书写SQL语句
String sql = "CREATE TABLE userinfo_fury("
+ " id INT (10) PRIMARY KEY AUTO_INCREMENT, "
+ " username VARCHAR (30), "
+ " password VARCHAR (30), "
+ " email VARCHAR (50), "
+ " nickname VARCHAR (30), "
+ " account FLOAT (10, 2) DEFAULT 15600) ";
System.out.println(sql); //4 执行SQL语句
state.execute(sql);
System.out.println("执行完毕"); state.close(); //关闭语句对象
conn.close(); //关闭连接对象 }catch(Exception e) {
e.printStackTrace();
} }
}
创建一个表
7 实例之 -->> 查询数据库表中的数据
package test; import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement; /**
* Description:
*/
public class Test {
public static void main(String[] args) {
Connection conn = null;
try {
Class.forName("com.mysql.jdbc.Driver"); //01加载数据库驱动包
conn = DriverManager.getConnection( //02连接数据库
"jdbc:mysql://localhost:3306/test",
"root",
"182838");
Statement state = conn.createStatement(); //03创建SQL语句对象 String sql = "SELECT * " //04 拼接SQL语句
+ "FROM userinfo_fury "; ResultSet rs = state.executeQuery(sql); //05 执行SQL语句 while(rs.next()) { //06 遍历查询到的结果集
int id = rs.getInt("id");
String username = rs.getString("username");
System.out.println(username + " -->> " + id);
} }catch (Exception e) {
e.printStackTrace();
}finally {
if(null != conn) {
try {
conn.close(); // 07 关闭连接
}catch(SQLException e) {
e.printStackTrace();
}
}
}
}
}
查询数据库中表的内容
8 待改进
8.1 写一篇博客专门介绍maven的安装和eclipse配置 -->> 三少有点懒,直接找有昕拿安装文档,哈哈哈 2017年5月25日15:18:51
8.2 使用数据库连接池来访问数据库【搞懂DBUTil类】
待更新... 2017年5月25日15:20:02
9 问题点
9.1 maven下载包
疑惑点:在eclipse中配置maven时明明已经将阿里云的镜像更改了,为什么不能够进行自动下载jar包呢?这个问题困扰三少一周啦,哎,哎,哎...2017年4月5日14:41:50
问题原因:有可能是当时网络原因导致,多等待一会就行啦;是在不行直接将依赖的相关信息写到配置文件中,这样速度就会快很多。2017年5月25日15:16:13
利用JDBC连接数据库(MySQL)的更多相关文章
- JDBC01 利用JDBC连接数据库【不使用数据库连接池】
目录: 1 什么是JDBC 2 JDBC主要接口 3 JDBC编程步骤[学渣版本] 5 JDBC编程步骤[学神版本] 6 JDBC编程步骤[学霸版本] 1 什么是JDBC JDBC是JAVA提供的一套 ...
- 利用JDBC处理mysql大数据--大文本和二进制文件等
转载自http://www.cnblogs.com/xdp-gacl/p/3982581.html 一.基本概念 大数据也称之为LOB(Large Objects),LOB又分为:clob和blob, ...
- JDBC02 利用JDBC连接数据库【使用数据库连接池】
目录 1/2/3 Statement 和 Preparedstatement 的区别 4 读取properties配置文件 5 数据库连接池 6 利用数据库连接池连接数据库 1 使用Statemen ...
- 利用JDBC连接MySQL并使用MySQL
driver为JDBC的驱动. url为数据库的地址. usrname和password分别为数据库的用户名和密码. Connection类用来连接MySQL. PreparedStatement类用 ...
- JDBC连接数据库(MySQL)
package com.dao; import java.sql.Connection; import java.sql.DriverManager; import java.sql.ResultSe ...
- loadrunner 利用JDBC操作mysql数据库
import lrapi.lr;import java.util.ArrayList;import java.util.List; import java.sql.Connection; import ...
- MyEclipse通过JDBC连接MySQL数据库基本介绍
转载自:http://www.jb51.net/article/31876.htm 1.前提是MyEclipse已经能正常开发Java工程 2.安装MySQL 个人使用的是版本是 mysql-5.0. ...
- 利用Java针对MySql封装的jdbc框架类 JdbcUtils 完整实现(包含增删改查、JavaBean反射原理,附源码)
最近看老罗的视频,跟着完成了利用Java操作MySql数据库的一个框架类JdbcUtils.java,完成对数据库的增删改查.其中查询这块,包括普通的查询和利用反射完成的查询,主要包括以下几个函数接口 ...
- Java连接mySql—JDBC连接数据库
利用JDBC开发数据库 经典应该用框架: 第一步,加载JDBC数据库驱动程序(不同的数据库有不同的数据库驱动,所以在连接数据库之前,需加载驱动) 格式: String driver = "c ...
随机推荐
- BZOJ3040 最短路(road)
题意 N个点,M条边的有向图,求点1到点N的最短路(保证存在). \(1 \leq N \leq 1000000,1 \leq M \leq 10000000\) 前T条边采用如下方式生成: 初始化x ...
- xcomponent web 跨域组件介绍
1. 项目地址: https://github.com/krakenjs/xcomponent 2. 支持的特性 a. Render an iframe or popup on a different ...
- Java各种集合容器的总结
Java容器指的是List,Set,Map这些类.由于翻译的问题,问到集合,Collection这些指的都是它们几个. List ArrayList 随机访问快 LinkedList 插入删除快 这个 ...
- Tomcat && Servlet(1)
一.概述 为了让web服务器和web应用程序进行访问交互,servlet是这个交互的标准接口,web服务器必须符合servlet标准,web应用应该实现servlet接口. tomcat是一个符合se ...
- RESTful处理JSON
@RequestMapping(value = "/dblist", method = RequestMethod.GET) @ResponseBody public Map< ...
- STM32F103外部晶振由8M变为12M
STM32官方提供的库文件中,HSE(外部高速时钟)默认为8MHz,最高主频为8*9=72MHz,如果将HSE变为12MHz,不修改库文件的话,最高主频则变为12*9=108MHz,最典型的问题就是U ...
- netty中的UDP
UDP 提供了向多个接收者发送消息的额外传输模式: 多播——传输到一个预定义的主机组: 广播——传输到网络(或者子网)上的所有主机. 本示例应用程序将通过发送能够被同一个网络中的所有主机所接收的消息来 ...
- phpmailer实现邮件发送
phpmailer实现邮件发送 1.代码 <?php require("class.phpmailer.php"); //这个是一个smtp的php文档,网上可以下载得到 $ ...
- 从request获取各种路径总结 request.getRealPath("url")
转载:http://blog.csdn.net/piaoxuan1987/article/details/8541839 equest.getRealPath() 这个方法已经不推荐使用了,代替方法是 ...
- PHP文件操作(二)-文件的读取
1.fread() //读取打开的文件 fread(file,length) file:必选项,规定要读取的打开的文件 length:必选项,规定要读取的最大字节数. <?php $fil ...