JDBC是什么,2024年前端笔试题总结

简介: JDBC是什么,2024年前端笔试题总结

正文

JDBC的结构可划分为两层:一个是面向底层的JDBC Driver Interface(驱动程序管理器接口),另一个是面向程序员的JDBC API。

使用JDBC编程,可让开发人员从复杂的驱动器调用命令和函数中解脱出来,可以致力于应用程序中的关键地方。JDBC支持不同的关系数据库,这使得程序的可移植性大大加强。JDBC API是面向对象的,可以让用户把常用的方法封装为—个类,以备后用。但是它也有缺点,一是使用JDBC,访问数据记录的速度会受到一定程度的影响。二是JDBC结构中包含不同厂家的产品,这就给更改数据源带来了很大的麻烦。

JDBC核心接口与类

====================================================================

JDBC核心类库包含在java.sql包中。

接口:

  • Connection:特定数据库的连接(会话)。在连接上下文中执行SQL语句并返回结果。
  • PreparedStatement:表示预编译的 SQL 语句的对象。
  • Statement:用于执行静态 SQL 语句并返回它所生成结果的对象。
  • ResultSet :表示数据库结果集的数据表,通常通过执行查询数据库的语句生成 。
  • CallableStatement :用于执行 SQL 存储过程的接口 。

类:

  • DriverManager:负责管理JDBC驱动程序。使用JDBC驱动程序之前,必须先将驱动程序加载并注册后才可以使用,同时提供方法来建立与数据库的连接。
  • SQLException:有关数据库操作的异常。

JDBC优缺点

=================================================================

**优点:

JDBC使得编程人员从复杂的驱动器调用命令和函数中解脱出来,可以致力于应用程序中的关键地方。

JDBC支持不同的关系数据库,这使得程序的可移植性大大加强。

JDBC API是面向对象的,可以让用户把常用的方法封装为—个类,以备后用。**

**缺点:

使用JDBC,访问数据记录的速度会受到一定程度的影响。

JDBC结构中包含不同厂家的产品,这就给更改数据源带来了很大的麻烦。**

数据库驱动程序

=================================================================

**第一类: jdbc-odbc桥

把JDBC API调用转换成ODBC API 调用, 然后ODBC API调用针对供应商的ODBC 驱动程序来访问数据库, 即利用JDBC- ODBC 桥通过ODBC来存储数据源 。**

**第二类: 本地API驱动

本地api驱动直接把jdbc调用转变为数据库的标准调用再去访问数据库. 这种方法需要本地数据库驱动代码。**

**第三类: 网络协议驱动

它使用一种与具体数据库无关的协议将数据库请求发送给一个中间服务器。**

**第四类: 本地协议驱动

这种驱动直接把jdbc调用转换为符合相关数据库系统规范的请求.由于4型驱动写的应用可以直接和数据库服务器通讯,这种类型的驱动完全由java实现,因此实现了平台独立性。 通常开发中多采用第四种方式,这种驱动不需要先把jdbc的调用传给odbc或本地数据库接口或者是中间层服务器,所以它的执行效率是非常高的驱动。**

注:各数据库厂商均提供对 JDBC 的支持,即提供数据库连接使用的驱动程序文件需要为数据库应用程序正确加载驱动程序文件以获得数据库连接,实施操作。

创建JDBC应用程序的步骤 *(重要)

==============================================================================

**1. 载入JDBC驱动程序

2. 定义连接URL

3. 建立连接

数据结构与算法

这一块在笔试、面试的代码题中考核较多,其中常考的数据结构主要有:数组、链表、队列、栈、Set、Map、哈希表等,不同数据结构有不同的方法以及储存原理,这些算是技术岗的必备知识。算法部分主要分为两大块,排序算法与一些其他算法题

排序算法根据考频高低主要有:快速排序、归并排序、堆排序、冒泡排序、插入排序、选择排序、希尔排序、桶排序、基数排序、Timsort这十种,这类考核点要么是算法的时间、空间复杂度、稳定度,要么是直接手写代码,故在理解算法原理的同时,对JS语言版的排序算法代码也要加强记忆。

  • 二叉树层序遍历
  • B 树的特性,B 树和 B+树的区别
  • 尾递归
  • 如何写一个大数阶乘?递归的方法会出现什么问题?
  • 把多维数组变成一维数组的方法
  • 知道的排序算法 说一下冒泡快排的原理
  • Heap 排序方法的原理?复杂度?
  • 几种常见的排序算法,手写
  • 数组的去重,尽可能写出多个方法
  • 如果有一个大的数组,都是整型,怎么找出最大的前 10 个数
  • 知道数据结构里面的常见的数据结构
  • 找出数组中第 k 大的数组出现多少次,比如数组【1,2, 4,4,3,5】第二大的数字是 4,出现两次,所以返回 2
  • 合并两个有序数组
  • 给一个数,去一个已经排好序的数组中寻找这个数的位 置(通过快速查找,二分查找)


相关文章
|
存储 数据采集 移动开发
经典的前端 面试笔试题(一)
经典的前端 面试笔试题
162 0
|
4月前
|
前端开发 小程序 JavaScript
2022前端面试笔试题及答案
2022前端面试笔试题及答案
168 0
|
存储 Web App开发 缓存
经典的前端 面试笔试题(二)
经典的前端 面试笔试题
142 0
|
存储 前端开发 JavaScript
🍪前端笔试系列 | 小米2020校招前端工程师笔试题
🍪前端笔试系列 | 小米2020校招前端工程师笔试题
493 9
🍪前端笔试系列 | 小米2020校招前端工程师笔试题
|
存储 缓存 前端开发
记录一套新鲜的前端笔试题
本套笔试题真实(2019.10.9),做题时间要求:四十分钟。 可供自测(初级前端),按需取用。
|
前端开发 JavaScript Java
|
JavaScript 前端开发 开发工具
前端笔试题面试题记录(下)
接上篇前端笔试题面试题记录(上)。趁清明小长假,把上篇剩下的部分也写一下,因为最近比较忙这篇已经拖了很久了。现在刚刚开始银四了,应该还是有些小伙伴在找工作,时间还不算太晚,希望本篇可以帮到这些小伙伴。 本文主要目录如下: 面试题QA 面试遇到的一些小问题 Vue系列问题
730 0
前端笔试题面试题记录(下)
|
移动开发 JavaScript 安全
前端笔试题面试题记录(上)
过完元宵,就到上海找了波工作,现在已经入职好了,蹭波热点,写一波面试记录,内容包含笔试题和面试题,还有一些没有写进来,准备再开一篇,许久没写了,写的确实有些慢。如果喜欢的话可以点波赞,或者关注一下,希望大家看完本文可以有所收获。 前端进阶积累、公众号、GitHub 后续 前端笔试题面试题记录(下) Q:什么情况下会碰到跨域问题?有哪些解决方法? 跨域问题是这是浏览器为了安全实施的同源策略导致的,同源策略限制了来自不同源的document、脚本,同源的意思就是两个URL的域名、协议、端口要完全相同。 script标签jsonp跨域、nginx反向代理、node.js中间件代理跨域、
260 0
前端笔试题面试题记录(上)
|
前端开发
2020年冬季前端笔试题总结
2020年冬季前端笔试题总结
2020年冬季前端笔试题总结
|
JavaScript 前端开发
牛客最新前端笔试题解析(一) this指向题目解析及扩展
牛客最新前端笔试题解析(一) this指向题目解析及扩展
296 0