通过JDBC连接Mysql之基础篇

1 JDBC基础知识

Q1 什么是JDBC技术

Java Database Connectivity :Java访问数据库的解决方案

Q2 JDBC如何实现访问数据库

JDBC定义了一套标准通用接口,由数据库厂商来实现这些接口连接数据库

Q3 JDBC有哪些标准通用接口

DriverManager 驱动管理

Connection/DatabaseMetaData 连接接口

Statement/PreparedStatement/CallableStatement 语句对象接口

ResultSet/ResultSetMetaData 结果集接口

Q4 JDBC标准接口内有些什么

每个接口都定义了一系列的抽象方法,无论连接哪一个数据库,

过程是一样的 这些包含抽象方法的接口都由各个数据库厂商来实现

Q5 什么是数据jar包

不同的数据库厂商编写标准通用接口的实现类,

这一组实现类打包在各自商场的JDBC-jar包中,

也就是jar包内包含的是JDBC标准接口的实现类

Q6 jar包的导入路径

1 web项目  WebRoot/WEB-INF/lib

2 普通项目  IDE[eclipse/myeclipse]

右键- User library  - next - import- findYourJar - ok

2 连接数据库的标准流程

1:注册驱动 Class.forName()

2:加载驱动建立数据库连接 DriverManager

3:通过连接创建执行SQL语句的对象 Connection

4:使用语句对象执行SQL Statement

5:若是查询语句,则可以获取结果 ResultSet

6:使用完毕后关闭连接释放资源

3 JDBC连接数据库的完整步骤

1:加载JDBC驱动

连接数据库之前,首先要将想要连接的数据库的驱动加载到JVM中

加载方法:java.lang.Class[static method] forName(String className)

eg:

  try{

      Class.forName("com.mysql.jdbc.Driver");//mysql Driver

      System.out.println("Driver inject success")

    }catch(ClassNotFoundException e){

      System.out.println("Not found database driver");

      e.printStackTrace();

    }

    加载成功:Driver类的实例注册到DriverMannger类中

2:提供JDBC连接的URL

URL:Uniform Resourcce Locator 统一资源定位符

URL定义了连接数据库时的协议、子协议、数据源标识

书写形式:协议:子协议:数据源标识

  协议:在JDBC中总是以jdbc开始

  子协议:桥连接驱动程序 or 数据库管理系统名称

  数据源标识:标记找到数据库来源的地址与接口

eg:   jdbc:mysql://localhost:33066/databaseName?useUnicode=true&characterEncoding=gbk

    [useUnicode=true]表示使用Unicode字符集

    [characterEncoding=gbk]字符编码方式   使用gb2312或gbk,必须使用Unicode字符集

3:创建数据库的连接

请求Connection对象:

通过java.sql.DriverManager[static method]  

getConnection(String url,String name,String password)

eg:

    try{

      Connection conn = DriverManager.getConnection(u,n,p)

      System.out.println("connection success");

    }catch(SQLException se){

      System.out.println("connection failed");

      se.printStackTrace();

    }

4:创建Statement实例

java.sql.Statement

作用:执行SQL语句

种类:

  1 执行静态SQL语句 --> Statement实例

  2 执行动态SQL语句 --> PreparedStatement实例

  3 执行数据库存储过程 --> CallableStatement实例

eg:

  Statement st = conn.createStatement();

  PreparedStatement ps = conn.prepareStatement(sql);

  CallableStatement cs = conn.prepareCall("{CALL demoSp(?,?)");

5:通过Statement执行SQL语句

  三种方法:

  1 ResultSet executeQuery(String sqlString)    查询数据库SQL语句,返回一个结果集对象

  2 int executeUpadate(String sqlString)    执行INSERT UPDATE DELETE DDL语句

  3 boolean execute(sqlString)    用于执行返回多个结果集、多个更新计数

eg:

  ResultSet rs = st.executQuery("SELECT * FROM ...");

  int row = st.executeUpdate("INSERT INTO ...");

  boolean flag = st.execute(String sql);

6:处理结果

  两种情况:

  1 执行更新返回的是本次操作影响到的记录

  2 执行查询返回的结果是一个ResultSet对象

eg:

   while(rs.next()){

    String name = rs.getString("name");

    String pass = rs.getString(1);//获取第一列参数,高效

  }

7:关闭JDBC对象

  关闭顺序和申明顺序相反:

  1 关闭结果集 rs

  2 关闭声明 st

  3 关闭连接 conn

eg:

  if(conn!=null){

    try{

      conn.close();

    }catch(SQLException){

      e.printStackTrace();

    }

   }

时间: 11-02

通过JDBC连接Mysql之基础篇的相关文章

java jdbc 连接mysql数据库 实现增删改查

好久没有写博文了,写个简单的东西热热身,分享给大家. jdbc相信大家都不陌生,只要是个搞java的,最初接触j2ee的时候都是要学习这么个东西的,谁叫程序得和数据库打交道呢!而jdbc就是和数据库打交道非常基础的一个知识,也是比较接近底层的,在实际的工作中大家用得更多的其实还是比较成熟的框架,例如Hibernate.Mybatis. 但是作为这些成熟框架的底层的jdbc却也是我们应该去掌握的,只有了解了jdbc的增删改查,这样在以后如果有兴趣去研究Hibernate或者Mybatis的源代码的

JDBC连接MySQL数据库及演示样例

JDBC是Sun公司制定的一个能够用Java语言连接数据库的技术. 一.JDBC基础知识         JDBC(Java Data Base Connectivity,java数据库连接)是一种用于执行SQL语句的Java API,能够为多种关系数据库提供统一訪问,它由一组用Java语言编写的类和接口组成.JDBC为数据库开发者提供了一个标准的API,据此能够构建更高级的工具和接口,使数据库开发者能够用纯 Java API 编写数据库应用程序,而且可跨平台执行,而且不受数据库供应商的限制.

学习mysql语法--基础篇(二)

  前  言  mysql  mysql语法--本篇学习都是通过使用Navicat Premium(数据库管理工具),连接mysql数据. 本篇学习主要有两个部分: [SQL语句的组成]   DML 数据操作语言(插入.删除和修改数据库中的数据)INSERT UPDATE DELETE   DQL 数据查询语言(用来查询数据库中的数据)SELECT   DCL 数据控制语言(用来控制存取许可.存取权限等)CREATE   DDL 数据定义语言(用来建立数据库.数据库对象和定义表的列)CREATE

学习mysql语法--基础篇(一)

  前  言  mysql  mysql语法--本篇学习都是通过使用Navicat Premium(数据库管理工具),连接mysql数据. 本篇学习主要有两个部分:    一.创建用户,创建数据库,给用户分配权限,删除用户权限.    二.MYSQL中常见的数据类型 三.表-创建表.主键.外键    四.数据库设计的三大范式 以下所有代码全部在新建查询表里面使用mysql语法编辑. 1.创建用户,创建数据库,给用户分配权限,删除用户权限. /* SQL 多行注释 */-- SQL 单行注释 创建

mac jdbc连接mysql

1.下载jdbc驱动: http://dev.mysql.com/downloads/connector/j/ 2.加入jdbc的jar包至项目的libs目录并build path 2.修改环境变量:export PATH=/usr/local/mysql/bin/:${PATH} 3.默认[email protected]没有密码 4.修改密码: 命令行:mysqladmin -u root -p  password root MYSQL环境中的命令: mysql> UPDATE mysql.

(详细)JAVA使用JDBC连接MySQL数据库(1)- 软件

欢迎任何形式的转载,但请务必注明出处. 1.jdk 点击查看安装和环境配置教程 2.Eclipse 点击进入官网下载 注意下载完成打开.exe后,出现下图界面,有很多版本供选择 本人目前在学JSP所以安装的是Java EE版本,初学者可以选择第一个Java Developers版本 3.Mysql 点击进入官网下载 点击进入推荐安装教程+环境配置 下载页面注意事项 (虽然选项只有32位的,但下载完成后32位和64位都会安装) (上面的是在线安装,下面的是离线安装,建议选择离线安装) 系列文章 (

JAVA使用JDBC连接MySQL数据库 二(2)

本文是对 <JAVA使用JDBC连接MySQL数据库 二>的改进. 上节使用的是PreparedStatement来执行数据库语句,但是preparedStatement需要传递一个sql语句参数,才能创建.然而,DBHelper类只是起到打开和关闭数据库的作用,所以sql语句是要放到应用层部分的,而不是放到DBHelper类中. 而statment不需要传递一个sql语句参数,就能创建. 修改部分如下: public class DBHelper { String driver = &quo

使用JDBC连接MySQL数据库--典型案例分析(八)----实现员工数据的分页查询

转载请注明:http://blog.csdn.net/uniquewonderq 问题: 使用JDBC连接Mysql数据库,实现对Emp表数据的分页查询功能. 方案: 对于较大的数据量,通常采用分页查询的方式.不同的数据库产品有不同的数据库级的分页查询策略.例如:Oracle通常使用rownum的方式:而Mysql使用limit的方式. Oracle采用rownum和子查询实现分页查询,SQL语句如下, select * from (select rownum rn,empno,ename,jo

jdbc 连接mysql数据库

jdbc驱动到官网下载,放在jdk的相关目录下面,或者jar文件加入到工程下面 package test_mysql; import java.sql.*; import java.util.Set; public class testjdbc { public static Connection getConnection() throws ClassNotFoundException, SQLException{ String URL="jdbc:mysql://localhost:3306