1、数据持久化
数据持久化(persistence),就是将内存中的数据保存到硬盘中,大多通过各种关系数据库来完成
2、数据存取技术
Java中,数据存取技术分为JDBC、JDO、第三方框架(如mybatis)
3、JDBC
简介
JDBC(Java DataBase Connectivity) ,Java数据库连接 一种用于数据库访问的应用程序API,由一组用Java语言编写的类和接口组成。可以用统一的语法对多种关系数据库进行访问,而不用担心其数据库操作语言的差异。
体系结构
常用API
DriverManager-驱动程序管理器,用来管理驱动,并获得连接
Connection-代表应用程序与数据库的连接
Statement-声明,用来执行SQL语句
ResultSet-查询后的结果集
连接步骤(默认已有Jar包)
加载JDBC驱动
加载 JDBC 驱动需调用 Class 类的静态方法 forName(),向其传递要加载的 JDBC 驱动的类名Driver 接口的驱动程序类的静态代码块中,会调用 DriverManager.registerDriver() 方法注册实例。
建立连接
调用 DriverManager 类的 getConnection() 方法建立到数据库的连接。URL 用于标识被注册的驱动程序,驱动程序管理器通过 URL 选择正确的驱动程序,建立到数据库的连接。
语法: <协议>:<子协议>:<子名称>
协议:JDBC URL中的协议总是 jdbc
子协议:子协议用于标识一个数据库驱动程序,比如 mysql://
子名称:一种标识数据库的方法。子名称依不同的子协议变化,为了定位数据库提供足够的信息jdbc:mysql://localhost:3306/db
创建数据库处理对象
在连接上创建数据库处理对象 Statement
//创建Statement对象
Statement statement = conn.createStatement();
结果处理(略)
关闭链接
//后使用的先关闭
if(null!=rs){
rs.close();
}
if(ps_query!=null){
ps_query.close();
}
if(ps_insert!=null){
ps_insert.close();
}
if(conn!=null){
conn.close();
}
4、预处理PreparedStatement
SQL注入(例如:MD5加密)
PreparedStatement
5、批处理
6、事务处理:事务是数据操作的最小单元
7、元数据信息
8、DAO(Data Access Object -- 数据访问对象模式)
想要更合理的访问数据库,需要做到:高内聚低耦合,复用性,扩展性。DAO 用于将低层的数据操作API与上层的业务逻辑层分离。