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框架的不断发展,如今已经越来越趋于自动化,从代 ...
随机推荐
- Distances to Zero CodeForces - 803B (二分)
题目链接:https://vjudge.net/problem/CodeForces-803B#author=0 题意: 给你一个数组,其中至少包括一个0,求每一个元素距离最近一个0的距离是多少. 样 ...
- 机器学习算法(KNN)
KNN简介 KNN(k-NearestNeighbor)算法的思想总结一下:就是在数据和标签已知的情况下,输入测试数据,将测试数据的特征与训练集中对应的特征进行相互比较,找到训练集中与之最为相似的前K ...
- maven 总结
- TimeLine CSS/Javascript 时间线
https://casbootadminserver.herokuapp.com/#/applications/23bd8218/trace
- loadrunner基础学习笔记六-运行负载
controller视图: 场景组 窗格:查看场景组内vuser状态,使用窗格右侧的按钮可以启动.停止和重置场景,查看各个vuser的状态,通过手动添加更多vuser增加场景运行期间应用程序的负载 场 ...
- 【Java】 异常
异常分类 所有的异常都是由Throwable继承而来,但在下一层理解分解为两个类Error和Exception. Error类层次结构描述了Java运行时系统的内部错误和资源耗尽错误.应用程序不应该跑 ...
- unorder_map 自定义KEY
1. boost::unorder_map 实现自定义KEY // boostLibTest.cpp : 定义控制台应用程序的入口点. // #include "stdafx.h" ...
- AC自动机-HDU2896-模板题
http://acm.hdu.edu.cn/showproblem.php?pid=2896 另一道AC自动机的模板题,不过这题需要记录一下具体的匹配情况. /*------------------- ...
- ACM-ICPC国际大学生程序设计竞赛北京赛区(2017)网络赛 i题 Minimum(线段树)
描述 You are given a list of integers a0, a1, …, a2^k-1. You need to support two types of queries: 1. ...
- day6 字典
字典的创建方式 注意 字典是无序的 1. dic{"name":"yang","age":35} 常用还是用这个 2. dic3 = dic ...