关于JAVA中的JDBC我们知道它是一个面向数据库执行SQL语言的javaAPI,可以对多个数据库进行访问。
一般在情况下我们对数据库数据的增删查改都是通过JDBC进行的
因为毕业进入工作后用的都是Spring子类下的一些业务框架,所以自从毕业之后就没有再直接碰JDBC,今天心血来潮想再写一次结果发现把操作流程给忘记的差不多了,所以只好从类似文档中板些砖,再回忆回忆。
这里我用的是JDBC最简单的数据库访问获取方法,只是用来回忆基础知识,其它内容并不深究。
一、对Connection的回忆。
首先,要实现SQL数据库业务,首先要记住一个关键方法Connection[knekn](请恕我这个标音标的英语口语渣)。它能够对特定数据库进行回话,并且进行SQL语句的编译和运行。关于它更多的信息可以直接百度,这里就不陈述了。
所以既然这么强,所以我们一般都在方法申请之后就对齐进行申请
Connection conn=null;
二、通过Class映射加载MySql的驱动
因为我们用的是MySql数据库,所以我们在项目中一般都会有MySql的业务配置文件,所以我们可以直接通过Class的映射机制Class.forName("com.mysql.jdbc.Driver");直接加载映射驱动。
三、进行数据库连接
如果到这一步都没有报错,那么恭喜你成功加载了MySqlq驱动,之后我们就可以开启数据库连接了。
conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/shopuser=root&useUnicode=true&characterEncoding=utf-8");
这个就懒得解释了,毕竟就算是用框架不写JDBC但是数据库连接地址也是要写,所以就不解释了。
四、使用SQL语句进行查询和业务遍历
如果完成了上面三步,并且都没有报错的话,就可以进行SQL注入了。
一般情况下使用ResultSet result = stmt.executeQuery(sql);
sql是String内容的字符串。然后遍历result完成数据库数据查询 。
业务Deom
package cn.jdbc; import java.sql.Connection; import java.sql.DriverManager; import java.sql.ResultSet; import java.sql.SQLException; import java.sql.Statement; /** * MySql纯JDBC业务测试 * @author Taku * @Date 2018年6月29日 */ public class MySql_jdbc { public static void main(String[] args) throws SQLException { Connection conn = null; // MySQL的JDBC URL编写方式:jdbc:mysql://主机名称:连接端口/数据库的名称参数=值 // 避免中文乱码要指定useUnicode和characterEncoding // 执行数据库操作之前要在数据库管理系统上创建一个数据库,名字自己定, // 下面语句之前就要先创建javademo数据库 try { // jdbc:mysql://localhost:3306/shopuseUnicode=true&characterEncoding=utf-8 // "user=root&password=root&useUnicode=true&characterEncoding=UTF8"; // 之所以要使用下面这条语句,是因为要使用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("jdbc:mysql://localhost:3306/shopuser=root&useUnicode=true&characterEncoding=utf-8"); // Statement里面带有很多方法,比如executeUpdate可以实现插入,更新和删除等 Statement stmt = conn.createStatement(); String sql = "SELECT user_Gender FROM user WHERE user_Id=1"; ResultSet result = stmt.executeQuery(sql);// executeUpdate语句会返回一个受影响的行数,如果返回-1就没有成功 System.out.println("用户状态"); while (result.next()) { System.err.println(result.getString(1)); } } catch (SQLException e) { System.out.println("MySQL操作错误"); e.printStackTrace(); } catch (Exception e) { e.printStackTrace(); } finally { conn.close(); } } }