利用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 ...
随机推荐
- DotNet Core Console 程序使用NLog
参考:https://github.com/NLog/NLog/wiki/Tutorial 步骤: 1. 使用Nuget安装NLog.Extensions.Logging Install-Packag ...
- hibernate的list和iterate的区别
一.先介绍一下java中的缓存系统JCS(java cache system) 1.JCS(Java Caching System)是一个对象Cache,它可以把Java对象缓存起来,提高那些访问频 ...
- c语言中指针的一个小错误
在定义指针后需要给指针赋值然后才能使用*p赋值或被赋值,这是个基础问题,没有理解,导致出问题. 空指针 ,也称悬 游指 针 ,是使 用 未初 始化 的指 针 .指针变量未初始化时它的值不是没有 ,而是 ...
- Angular2常用命令
一.常用命令 1.1 npm config list配置项目 可进行相关代理配置,通常可以配置在网络环境较差的情况下,配置相关代理.相关的设置命令如图: 1.2 ng 新建启动项目 ng new pr ...
- js判断客户端是pc还是手机
function IsPC() { var userAgentInfo = navigator.userAgent; var Agents = ["Android", " ...
- eclipse 中xml文件的字体改不了
XML Editor的改不了. 修改colors & fonts里的eclipse中打开window->prefece->generation-basic 下 Text Edito ...
- eclipse解决git冲突举例
本地修改了两个文件,提交时提示有冲突,想来应该是没有从远程仓库下载最新代码导致的.通过右击项目 -> Team -> Sychronized WorkSpace,比较本地仓库和远程仓库的异 ...
- Linux 配置静态Ip地址
注:所有红色字体标注均为 Linux 的 操作命令 ! 1, 使用root账户登录系统 2, 可以先使用 ifconfig : 查看网卡信息 eth0 为默认的第一个网卡 , 如果有第二个就会显示 ...
- jenkins使用HTML Publisher Plugin插件 拉取报告样式缺失问题解决
---------------------------------------------------------临时解决方案----亲测ok 要解决该问题,方式也比较简单,就是修改Content S ...
- thinkPHP增删改查的方法案例
thinkphp对数据库增删改查进行了封装操作,使得使用更加方便,但是不一定灵活. 可以用封装的用,需要写sql,可以执行sql. 1.原始的 $Model = new Model(); // 实例化 ...