4、JDBC-API
访问数据库
/**
* 在 java.sql 包中有 3 个接口分别定义了对数据库的调用的不同方式:
* * Statement
* * PrepatedStatement
* * CallableStatement
*/
Statement
/**
* 通过调用 Connection 对象的 createStatement 方法创建该对象
* 用于执行静态的 SQL 语句,并且返回执行结果,下列方法执行 SQL 语句:
* ResultSet excuteQuery(String sql)
* int excuteUpdate(String sql)
*/
PreparedStatement
/**
* 可以通过调用 Connection 对象的 preparedStatement() 方法获取该对象,是 Statement 的子接口,表示一条预编译过的 SQL 语句
* PreparedStatement 对象所代表的 SQL 语句中的参数用问号(?)来表示,调用 setXXX() 方法来设置这些参数,setXXX() 方法有两个参数,第一个参数是要设置的 SQL 语句中的参数的索引(从 1 开始),第二个是设置的 SQL 语句中的参数的值
*
* PreparedStatement 代码的可读性和可维护性更好,不用拼接 SQL,可以防止 SQL 注入,能最大可能提高性能,DBServer会对预编译语句提供性能优化,因为预编译语句有可能被重复调用
* Statement 中,即使是相同操作但因为数据内容不一样,需要重新执行(语法检查,语义检查,翻译成二进制命令,缓存)
*/
ResultSet
/**
* ResultSet 对象以逻辑表格的形式封装了执行数据库操作的结果集,ResultSet 接口由数据库厂商实现
* ResultSet 对象维护了一个指向当前数据行的游标,初始的时候,游标在第一行之前,可以通过 ResultSet 对象的 next() 方法移动到下一行
* ResultSet 接口的常用方法:
* boolean next()
* getString()
*/
流程
/**
* java.sql.DriverManager 用来装载驱动程序,获取数据库连接
*
* java.sql.Connection 完成对某一指定数据库的联接
*
* java.sql.Statement 在一个给定的连接中作为SQL执行声明的容器,他包含了两个重要的子类型
*
* Java.sql.PreparedSatement 用于执行预编译的sql声明
*
* Java.sql.CallableStatement 用于执行数据库中存储过程的调用
*
* java.sql.ResultSet 对于给定声明取得结果的途径
*/
类型对应
|
java类型 |
SQL类型 |
|---|---|
|
boolean |
BIT |
|
byte |
TINYINT |
|
short |
SMALLINT |
|
int |
INTEGER |
|
long |
BIGINT |
|
String |
CHAR,VARCHAR,LONGVARCHAR |
|
byte array |
BINARY , VAR BINARY |
|
java.sql.Date |
DATE |
|
java.sql.Time |
TIME |
|
java.sql.Timestamp |
TIMESTAMP |
4、JDBC-API的更多相关文章
- 已看1.熟练的使用Java语言进行面向对象程序设计,有良好的编程习惯,熟悉常用的Java API,包括集合框架、多线程(并发编程)、I/O(NIO)、Socket、JDBC、XML、反射等。[泛型]\
1.熟练的使用Java语言进行面向对象程序设计,有良好的编程习惯,熟悉常用的Java API,包括集合框架.多线程(并发编程).I/O(NIO).Socket.JDBC.XML.反射等.[泛型]\1* ...
- JavaWeb学习之JDBC API中常用的接口和类
JDBC API中包含四个常用的接口和一个类分别是: 1.Connection接口 2.Statement接口 3.PreparedStatement接口 4.ResultSet接口 5.Driver ...
- Solr系列四:Solr(solrj 、索引API 、 结构化数据导入)
一.SolrJ介绍 1. SolrJ是什么? Solr提供的用于JAVA应用中访问solr服务API的客户端jar.在我们的应用中引入solrj: <dependency> <gro ...
- Spring入门(三)— AOP注解、jdbc模板、事务
一.AOP注解开发 导入jar包 aop联盟包. aspectJ实现包 . spring-aop-xxx.jar . spring-aspect-xxx.jar 导入约束 aop约束 托管扩展类和被扩 ...
- 40、JDBC相关概念介绍
1.1.数据库驱动 这里的驱动的概念和平时听到的那种驱动的概念是一样的,比如平时购买的声卡,网卡直接插到计算机上面是不能用的,必须要安装相应的驱动程序之后才能够使用声卡和网卡,同样道理,我们安装好数据 ...
- 创建JDBC模板简化代码、JDBC应用的事务管理以及连接池的作用
一.创建JDBC模板简化代码 一个简单的查询.要做这么一大堆事情,并且还要处理异常,我们不防来梳理一下: 1.获取connection 2.获取statement 3.获取resultset 4 ...
- java语言体系的技术简介之JSP、Servlet、JDBC、JavaBean(Application)
转自:https://zhangkunnan.iteye.com/blog/2040462 前言 Java语言 Java语言体系比较庞大,包括多个模块.从WEB项目应用角度讲有JSP.Servlet. ...
- 人人都是 API 设计师:我对 RESTful API、GraphQL、RPC API 的思考
原文地址:梁桂钊的博客 博客地址:http://blog.720ui.com 欢迎关注公众号:「服务端思维」.一群同频者,一起成长,一起精进,打破认知的局限性. 有一段时间没怎么写文章了,今天提笔写一 ...
- 42、JDBC数据源案例
一.JDBC数据源案例 1.概述 Spark SQL支持使用JDBC从关系型数据库(比如MySQL)中读取数据.读取的数据,依然由DataFrame表示,可以很方便地使用Spark Core提供的各种 ...
- MyBatis、JDBC相关知识
引言 在mybatis的基础知识中我们已经可以对mybatis的工作方式窥斑见豹.但是,为什么还要要学习mybatis的工作原理?因为,随着mybatis框架的不断发展,如今已经越来越趋于自动化,从代 ...
随机推荐
- <四则运算>第二次冲刺
这一次冲刺的主要内容是完善我们的界面,是我们的APP界面更规划更标准一点, 然后还要添加一些新算法. 距离客户的需求已经一半了. 代码正在完善中,稍后上传...
- BugPhobia进阶篇章:功能规格说明书
0x01 :特别鸣谢 首先特别鸣谢<构建之法>中并没有给出固定化格式的功能规格说明书的样例,因此在此次的说明书中将尽可能用生动形象的例子展示软件交互阐释 因此受到它本身的启发,此次团队功能 ...
- pandas修改全列的时间格式 无需使用apply
df.date.dt.strftime('%Y%m%d') #实现全列修改时间格式
- octave基本指令3
octave基本指令3 数据运算 >> a = [1 2; 3 4; 5 6]; >> b = [11 12; 13 14; 15 16]; >> c = [1 1 ...
- chrome启用flash不询问
69版本之后 打开 chrome://flags/#enable-ephemeral-flash-permission 把它从Default改为Disabled 重新打开Chrome,进入 chrom ...
- Gradle下载类库源码
https://blog.csdn.net/xiaoxing598/article/details/68958383 备选:https://www.cnblogs.com/yoyotl/p/62917 ...
- Oracle 导入导出报错的简单处理
这边出现报错: 简单查了下资料发现: https://blog.csdn.net/lichkui/article/details/5489708 在imp 的命令后面 增加buffer 即可 比如 i ...
- 装CentOS 系统
一. 二. 三. 四. 五. 六. 七. 八. 九. 十. 十一. 十二. 十三. 十四. 十五. 十六. 十七. 十八. setup设置
- ELK日志框架(1):安装Elasticsearch组建单服务器多节点集群
ELK简介 最近有个需求搭建一套日志系统用于集成几个业务系统的日志提供快速的检索功能,目前是用Log4net存数据库+Error级别发邮件方式,也算简单暴力好用,但历史日志的模糊查询确实很慢,所以使用 ...
- JUC-Condition线程通信
1,Codition接口描述了可能会与锁有关联的条件变量.这些变量在用法上与使用Object.wait访问的隐式监视器类似. 但提供了更强大的功能,需要指出的是,单个lock可能与多个conditio ...