java中的数据储存技术
在java中,数据库存取技术可以分为以下几类:
- JDBC直接访问数据库
- JDO(java Data Object)技术
- 第三方O/R工具,如Hibernate、Mybatis等
jdbc是java访问数据库的基石,JDO,Hibernate,MyBatis只是更好的封装了JDBC
JDBC介绍
- jdbc是一个独立于特定数据库管理系统,通用的SQL数据库存储和操作的公共接口(一组API),定义了用于访问数据库的标准java类库(java.sql.javax.sql)使用这些类库可以以一种标准的方法,方便地访问数据库资源
- jdbc为访问不同的数据提供了统一的途径,对开发者屏蔽了一些细节
- jdbc的目标是使java程序员使用JDBC可以链接任何提供了JDBC驱动程序的数据库系统,这样就使得程序员无需对特定的数据库系统的特点有过多的了解,从而大大简化和加快了开发过程。
JDBC程序编写步骤
开始——导入java.sql包——java驱动或者jdbcODBC桥方式——加载并且注册驱动程序——创建Connection对象——创建Statement对象——执行SQL语句——(查询)——使用ResultSet对象——关闭ResultSet对象——(更新数据库返回)——关闭Statement对象——结束
(ODBC:微软在win平台上退出的,使用者在程序中只要调用ODBC API,由ODBC驱动程序将调用转化为对特应数据库的调用)
获取数据库连接
Driver接口
- java.sql.Driver接口是所有JDBC驱动程序要实现的接口,这个接口是提供给数据库厂商使用的,不同的数据库厂商提供不同的实现
- 在程序中不需要直接访问实现了Driver接口的类,而是由驱动程序管理器类(java.sql.DriverManager)去调用这些Driver实现。
package com.study.lele.testFirstStudy;
import java.sql.Connection;
import java.sql.Driver;
import java.sql.SQLException;
import java.util.Properties;
public class testConnection1 {
public void testConnection1()throws SQLException {
Driver driver = new com.mysql.cj.jdbc.Driver();
String url = null;
Properties info = null;//主要用来读取配置文件等
Connection conn = driver.connect(url,info);
//返回的是一个连接对象
System.out.println(conn);
}
}
URL
JDBC URL 用来标识一个被注册的驱动程序,驱动程序管理器通过这个URL选择正确的驱动程序,从而建立到数据库的连接。
JDBC URL 的标准由三部分组成,各部分间用冒号分隔
jdbc:子协议:子名称
协议:JDBC URL中的协议总是jdbc
子协议:用来标识一个数据库驱动程序
子名称: 一种标识数据库的方法,子名称可以依不同的子协议变化,用子名称的目的是为了定位数据库提供足够的信息,包含主机名(对应服务端的ip地址)端口号 ,数据库名
案例:jdbc:mysql://localhost:3306/test
导入数据库连接驱动方法:点这里
——————————————
获取数据库连接方式一
package studyForJDBC;
import java.sql.Connection;
import java.sql.Driver;
import java.sql.SQLException;
import java.util.Properties;
public class testConnection1 {
public void testconnection1()throws SQLException {
Driver driver = new com.mysql.cj.jdbc.Driver();
String url = "jdbc:mysql://localhost:3306/student"
+"?useUnicode=ture&characterEncoding=utf8&serverTimezone=GMT%2B8&useS