JDBC阶段总结
一、JDBC的概念:Java DataBase Connectivity用Java语言操作数据库(通过SQL)
二、数据库的驱动和JDBC的关系
三、编写JDBC的步骤:
a、注册驱动
b、建立与数据库的链接
c、创建代表语句的对象
d、执行语句
e、如果有结果集,进行遍历
f、释放资源
四、JDBC相关类和接口的详解
1、DriverManager
注册驱动
获取与数据库的链接
2、Connection
所有的与数据库的交互都是基于该接口
功能:
创建代表SQL语句的对象(普通语句,预编译语句,调用存储过程)
事务控制
事务隔离级别控制
数据库元数据信息的获取
3、Statement
执行SQL语句:executeQuery executeUpdate
执行批处理
4、ResultSet
应该把查询到的结果封装到JavaBean中
5、PreparedStatement(首选)
参数采用占位符
防止sql注入
预编译SQL语句,执行效率高
五、释放资源
抽取了JDBC工具类(切换数据库方便)
编码有模板
六、基本的CRUD操作
七、在真实案例中写了一个Dao实现(用户注册和登录案例)
八、JavaWeb案例:客户信息管理 CRUD
九、大数据的存取:Clob和Blob
十、批处理SQL语句:提高数据库的利用率(执行效率)
十一、JDBC如何调用数据库中的存储过程
SQL: {call 存储过程名(?,?)}
输入参数要给值;输出参数要注册数据类型(java.sql.Type)
十二、事务入门
MySQL:start transaction;commit;rollback;
JDBC:conn.setAutocommit(false) commit() rollback()
十三、事务的特性(原子性 一致性 持久性 隔离性)
十四、隔离性专题:
概念:脏读、不可重复读、虚读
防止这些不正确的情况,通过调整隔离级别:
READ UNCOMMITTED
READ COMMITTED
REPEATABLE READ
SERIALIZABLE
级别越高,效率越低,同时数据越安全
开启事务前必须设置隔离级别
十五、链接池原理
连接池:提高效率
包装设计模式
动态代理
十六、开源数据源
DBCP
C3P0
获取TomcatJNDI中的数据源:会配置
十七、数据库元数据信息的获取(为编写框架做准备)
十八、编写自己的JDBC框架(只是对JDBC编码进行了简化)
策略设计模式:ResultSetHandler接口
十九、DBUtils框架QueryRunner的基本使用
批处理;查询;DML
二十、DBUtils中的ResultSetHandler的实现类详解
封装的是结果集
二十一、ThreadLocal(很重要。线程局部变量)
二十二、实际开发中如何控制事务
1、DAO只负责CRUD
2、面向切面编程:借助动态代理
二十三、利用DBUtils进行多表操作(对学习Hibernate非常有帮助)
一对多
多对多
一对一
重点:表如何设计;类如何设计;他们间的对应关系必须清楚
表的关系通过外键进行关联
对象间的关系通过关联进行引用的
二十四、大结果集的分页(提高效率)
MySQL:limit M,N
M开始记录的索引
N每次取多少条
抽取了公用的代码:Page.java Page.jsp
JDBC阶段总结的更多相关文章
- 框架基础之Hibernate简介
框架基础之Hibernate简介 1.什么是Hibernate? Hibernate是一个开发源代码的对象关系映射框架,它对JDBC进行非常轻量级的对象封装,使得程序员可以随心所欲地使用对象编程思维来 ...
- 菜鸟学习Hibernate——持久层框架
一.Java操作数据库的阶段. Java对数据库进行操作经历了三个阶段. 1.1操作JDBC阶段 这个阶段就是利用JDBC类来操作数据库.这个阶段出现了两个问题: 代码过度重复:在每一次数据库操作的是 ...
- JPA + SpringData 操作数据库原来可以这么简单 ---- 深入了解 JPA - 1
原创播客,如需转载请注明出处.原文地址:http://www.cnblogs.com/crawl/p/7703679.html ------------------------------------ ...
- 开放源代码的设计层面框架Spring——day01
spring第一天 一.Spring概述 1.1spring概述 1.1.1spring介绍 Spring是分层的Jav ...
- JPA + SpringData 操作数据库--Helloworld实例
前言:谈起操作数据库,大致可以分为几个阶段:首先是 JDBC 阶段,初学 JDBC 可能会使用原生的 JDBC 的 API,再然后可能会使用数据库连接池,比如:c3p0.dbcp,还有一些第三方工具, ...
- (转)JPA + SpringData
jpa + spring data 约定优于配置 convention over configuration http://www.cnblogs.com/crawl/p/7703679.html 原 ...
- JPA、SpringData JPA 、Hibernate和Mybatis 的区别和联系
一.JPA 概述 1. Java Persistence API(Java 持久层 API):用于对象持久化的 API 2. 作用:使得应用程序以统一的方式访问持久层 3. 前言中提到了 Hibern ...
- Hibernate入门步骤及概念
1.什么是Hibernate Hibernate是一个开发源代码的对象关系映射框架,它对JDBC进行非常轻量级的对象封装,使得程序员可以随心所欲地使用对象编程思维来操纵数据库.Hibernate可以应 ...
- mybatis第二天——动态SQL与关联查询
大纲摘要: 1.输入映射和输出映射 a) 输入参数映射 b) 返回值映射 2.动态sql a) If b) Where c) Foreach d) Sql片段 3.关联查询 a) 一对一关联 b) 一 ...
随机推荐
- tomcat更新class不生效
替换线上lib里的class不生效,需要想想是不是前人为了图方便在classes里面扔了一份老版本class
- 在select2插件中append下拉选,点击没反应的解决
今天前端大佬帮我解决了一个棘手的问题:克隆了已有系统的网页,尝试把复制下来的html改造成jsp.基本功能正常,然而点击新增按钮,出来的行无法点击下拉选,控制台也没报错. 项目用的是jeesite2. ...
- nc命令的用法
1.什么是nc netcat(nc)是一个简单而有用的工具,可以使用tcp或者udp进行网络间读写数据,传输文件,接收发送数据,验证网络是否畅通. 2.命令行: 1) -l 用于指定nc将处于侦听模式 ...
- 数据中台技术汇(二)| DataSimba系列之数据采集平台
继上期数据中台技术汇栏目发布DataSimba——企业级一站式大数据智能服务平台,本期介绍DataSimba的数据采集平台. DataSimba采集平台属于DataSimba的数据计算及服务平台的一部 ...
- 利用卷积神经网络实现MNIST手写数据识别
代码: import torch import torch.nn as nn import torch.utils.data as Data import torchvision # 数据库模块 im ...
- 企业框架-Spring
1.什么是Spring Spring是最受欢迎的企业级Java应用程序开发框架,数以百万的来自世界各地的开发人员使用Spring框架来创建性能好.易于测试.可重用的代码. Spring框架是一个开源的 ...
- 统计学方法(t-检验)
数据出来要做几件事:首先判断数据是否符合正态分布,如果符合的话,就要进行t-检验,那么进行t-检验的作用在哪呢? t-检验主要用于样本含量较小(例如n<30),总体标准差σ未知的正态分布 htt ...
- 吴裕雄--天生自然Android开发学习:1.2.1 使用Eclipse + ADT + SDK开发Android APP
1.前言 这里我们有两条路可以选,直接使用封装好的用于开发Android的ADT Bundle,或者自己进行配置 因为谷歌已经放弃了ADT的更新,官网上也取消的下载链接,这里提供谷歌放弃更新前最新版本 ...
- Oracle 10G 服务端的升级
第一步:备份 rman target / backup full database plus archivelog; 第二步:升级 解压升级包到soft目录下,修改所有者 chown -R oracl ...
- whip|resist|patch|intimate|
a piece of leather or rope that is fastened to a stick, used for hitting animals or people 鞭子,皮鞭 She ...