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 实例之 -->> 创建一个表
1 package day01; 2 3 import java.sql.Connection; 4 import java.sql.DriverManager; 5 import java.sql.Statement; 6 7 /** 8 * JDBC 9 * java数据库连接. 10 * JDBC是JAVA提供的一套标准连接数据库的接口;规定了连接数据库的步骤和功能, 11 * 不同的数据库提供商提供了一套JDBC实现类;他们称为数据库驱动. 12 * JDBC的主要接口有: 13 * DriverManager : 用于加载驱动并建立数据库连接 14 * Connection : 表示与特定数据库的连接会话 15 * Statement : 用于执行SQL语句 16 * ResultSet : 表示查询的结果集 17 * 通过JDBC操作数据库是自动进行提交的 18 * @author soft01 19 * 20 * 创建表 21 * 22 */ 23 public class Demo01 { 24 public static void main(String[] args){ 25 /* 26 * 使用JDBC连接数据库的步骤: 27 * 1 加载驱动包Cass.forName() 28 * 2 调用驱动建立连接:Connection -->> 生成类为:DriverManager 29 * 3 通过连接创建语句对象: Statement 30 * 4 执行SQL语句:Statement 31 * 5 若是查询语句会得到结果集:ResultSet 32 * 6 遍历结果集获取查询结果 33 * 7 关闭连接 34 */ 35 try { 36 37 /* 38 * 1 加载驱动包 39 * 不同数据库传入的字符串内容不一致 40 * 1.1 注意: 41 * 若抛出:java.lang.ClassNotFoundException通常有两种情况导致 42 * 1.1.1 没有在项目中导入驱动包 43 * 1.1.2 formatName方法中字符串格式有误 44 */ 45 Class.forName("com.mysql.jdbc.Driver"); //mysql驱动包的固定写法 46 System.out.println("驱动加载完毕。"); 47 48 /* 49 * 2 通过DriverManager与数据库建立连接 50 * 使用静态方法getConnection, 要传入三个参数 51 * 参数1 数据库地址,不同数据库格式不同 52 * 参数2 数据库用户名 53 * 参数3 数据库密码 54 */ 55 Connection conn = DriverManager.getConnection( 56 "jdbc:mysql://localhost:3306/test", // jdbc:mysql:// + IP + : + 端口 + 数据库名称 57 "root", // 用户名 58 "182838"); // 用户密码 59 System.out.println("链接成功"); 60 61 /* 62 * 3 创建语句对象 63 * Statement针对不同类型的SQL语句有不同的执行方法 64 * ResultSet executeQuery(String sql) 65 * 用来执行查询语句(SQL)的方法,返回的是一个查询结果集 66 * 67 * int executUpdate(String sql) 68 * 用来执行DML语句的方法,返回值为执行了该SQL后影响了数据库中多少条数据 69 * 70 * boolean execute(String sql) 71 * 可以执行所有类型的SQL语句,但是DQL,DML都有专门的方法,所以该方法通常 72 * 用来执行DDL语句.当返回值为true时表示该SQL语句执行后有结果集,没有结果集 73 * 的都是返回的false.(并不是根据语句的对错来返回true或者false) 74 */ 75 Statement state = conn.createStatement(); 76 77 //书写SQL语句 78 String sql = "CREATE TABLE userinfo_fury(" 79 + " id INT (10) PRIMARY KEY AUTO_INCREMENT, " 80 + " username VARCHAR (30), " 81 + " password VARCHAR (30), " 82 + " email VARCHAR (50), " 83 + " nickname VARCHAR (30), " 84 + " account FLOAT (10, 2) DEFAULT 15600) "; 85 System.out.println(sql); 86 87 //4 执行SQL语句 88 state.execute(sql); 89 System.out.println("执行完毕"); 90 91 state.close(); //关闭语句对象 92 conn.close(); //关闭连接对象 93 94 }catch(Exception e) { 95 e.printStackTrace(); 96 } 97 98 99 } 100 }
7 实例之 -->> 查询数据库表中的数据
1 package test; 2 3 import java.sql.Connection; 4 import java.sql.DriverManager; 5 import java.sql.ResultSet; 6 import java.sql.SQLException; 7 import java.sql.Statement; 8 9 /** 10 * Description: 11 */ 12 public class Test { 13 public static void main(String[] args) { 14 Connection conn = null; 15 try { 16 Class.forName("com.mysql.jdbc.Driver"); //01加载数据库驱动包 17 conn = DriverManager.getConnection( //02连接数据库 18 "jdbc:mysql://localhost:3306/test", 19 "root", 20 "182838"); 21 Statement state = conn.createStatement(); //03创建SQL语句对象 22 23 String sql = "SELECT * " //04 拼接SQL语句 24 + "FROM userinfo_fury "; 25 26 ResultSet rs = state.executeQuery(sql); //05 执行SQL语句 27 28 while(rs.next()) { //06 遍历查询到的结果集 29 int id = rs.getInt("id"); 30 String username = rs.getString("username"); 31 System.out.println(username + " -->> " + id); 32 } 33 34 }catch (Exception e) { 35 e.printStackTrace(); 36 }finally { 37 if(null != conn) { 38 try { 39 conn.close(); // 07 关闭连接 40 }catch(SQLException e) { 41 e.printStackTrace(); 42 } 43 } 44 } 45 } 46 }
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