JAVA面试常考系列八

转载自 JAVA面试常考系列八

题目一

JDBC是什么

JDBC(Java DataBase Connectivity,java数据库连接)是一种用于执行SQL语句的Java API,可以为多种关系数据库提供统一访问,由一组Java语言编写的类和接口组成。JDBC提供了一种基准,可以用来构建更高级的工具和接口,使数据库开发人员能够编写数据库应用程序,同时不必关心特定数据库的底层细节。

 

题目二

 Driver在JDBC中有哪些作用?

JDBC驱动提供了特定厂商对JDBCAPI接口类的实现,驱动必须要提java.sql包下面这些类的实现:Connection,Statement,PreparedStatement,CallableStatement,ResultSet和Driver。

 

题目三

解释一下Class.forName方法?

Class.forName方法是一个静态方法,用于加载将建立到数据库的连接的驱动程序返回与给定的字符串名称相关联接口Class对象

该方法有两种形式:Class.forName(String name, boolean initialize, ClassLoader loader)和 Class.forName(String className)。第一种形式的参数name表示的是类的全名;initialize表示是否初始化类;loader表示加载时使用的类加载器。第二种形式则相当于设置了参数 initialize的值为 true,loader的值为当前类的类加载器

题目四

PreparedStatement优于Statement的优点是什么?

优点一

PreparedStatement来代替Statement会使代码多出几行,但这样的代码无论从可读性还是可维护性上来说.都比直接用Statement的代码高很多档次

优点二

PreparedStatement是预编译语句,尽最大可能提高了性能。预编译语句有可能被重复调用,语句在被编译器编译后的执行代码被缓存下来,下次调用时只要是相同的预编译语句就不需要编译,只要将参数直接传入编译过的语句执行代码中就会得到执行。

优点三

极大地提高了安全性,可以有效的避SQL注入

优点四

PreparedStatement对象可以重复使用不同的输入值到他们的查询。

 

题目五

CallableStatement是什么,有哪些作用

CallableStatement 对象为所有的DBMS供了一种以标准形式调用已储存过程的方法。已储存过程储存在数据库中。对已储存过程的调用是CallableStatement对象所含的内容。这种调用是用一种换码语法来写的,有两种形式:一种形式带结果参,另一种形式不带结果参数。结果参数是一种输出(OUT) 参数,是已储存过程的返回值。两种形式都可带有数量可变的输入(IN 参数)、输出(OUT 参数)或输入和输出(INOUT 参数)的参数。问号将用作参数的占位符。

存储过程由数据库存储和提供,存储过程可能会从用户获取输入值,并可能返回结果。存储过程的使用受到高度鼓励,因为它提供了安全性和模块性。

 

题目六

连接池是什么,有哪些作用

与数据库的交互可能是昂贵的,关于数据库连接的打开和关闭。特别是当数据库客户端数量增加时,这个代价非常高,消耗了大量的资源。应用服务器在启动时获得一个数据库连接池,并保存在一个池中。连接请求由驻留在池中的连接提供。在连接结束时,请求将返回到池中,并可用于满足将来的请求。

 

题目七

连接池的工作原理是什么,有什么优点?

工作原理

当应用启动的时候,就初始化一些连接放在池中,如果客户端请求连接,则先判断池中是否还有连接。

如果有就返回客户端。

如果没有,判断当前连接数有没有超过系统允许的最大连接个数。没有的话则创建并返回连接,若超最过则出错。

当用户用完连接之后,再将连接放回池中

优点

可以实现连接的复用

题目八

RMI是什么

RMI(Remote Method Invocation,远程方法调用)是用Java在JDK1.1中实现的,它大大增强了Java开发分布式应用的能力是开发百分之百纯Java的网络分布式应用系统的核心解决方案之一。

Java远程方法调用(Java RMI)是一种执行远程过程调用(RPC)的面向对象的Java API,支持直接传输序列化的Java类和分布式垃圾收集。远程方法调用(RMI)也可以看作是在远程运行的对象上激活方法的过程。


题目九

如何使用RMI开发?

使用RMI开发主要分为六个步骤:

1.定义一个远程接口远程接口必须继承接口,每个方法必须抛出远程异常,方法参数和方法返回值都必须是可序列化的

2.实现远程接口

3.定义使用远程对象的客户程序

4.产生远程访问对象的桩和框 

5.注册远程对象

6.运行服务器和客户程序。

题目十

什么是RMI架构的基本原理?

RMI体系结构是基于一个非常重要的行为定义和行为实现相分离的原则。RMI允许定义行为的代码和实现行为的代码相分离,并且单独运行在不同的JVM上


本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/329732.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【广州/深圳 活动】 MVP社区巡讲

紧跟当今的技术发展趋势还远远不够,我们要引领变革!加入本地技术专家社区,获取真实案例、实况培训演示以及探讨新一代解决方案。在此活动中,您将: 了解如何运用开源(OSS)技术、Microsoft 技术及…

java socket实现简单即时通讯

【1】socket服务器 /*** Description 即时消息服务器* author xiao tang* version 1.0.0* createTime 2022年01月23日*/ public class IMSocketServer {private static int PORT 13;public static void main(String[] args) {ServerSocket server null;try {// 开启端口serv…

蝌蚪网课助手mac_疫情期间如何录网课?(干货教程)手把手教你录出高质量网课。...

鉴于国外疫情的持续爆发,中小学开学日期进一步延期,我们的网课教学也同样面临持续后延。我们的很多教师朋友,可能此时他们正需要这么一个教程来熟悉网课的录制方法。于是这篇文章就应运而生了,希望它能给各位老师带来些许帮助。​…

JAVA面试常考系列九

转载自 JAVA面试常考系列九 题目一 RMI架构层的结构是如何组成的? RMI体系结构由三层组成,分别是: 存根和骨架层(Stub and Skeleton Layer) 远程引用层(Remote Reference Layer) 传输层&#xf…

WebAPI前置知识:HTTP与RestfulAPI

对HTTP协议的基本了解是能理解并使用RestFul风格API的基础,在了解了这些基础之后,使用各种RestFul的开发框架才能得心应手。我一开始使用WebApi的时候就因为对这些知识缺乏了解,觉得用起来各种不顺手,直到熟悉了这些HTTP的知识后&…

Java三种代理模式-静态代理,动态代理和cglib代理

【README】 本文阐述了3种代理模式的定义,并编写了代码测试案例; 代理其实是一种设计模式,可以在访问目标对象的方法上下文添加处理逻辑(扩展目标对象的功能),是 切面编程的基石; 【举个例子】…

python遗传算法工具箱的使用_遗传算法的python实现,非常值得看的一篇文章

遗传算法是一种智能优化算法,通常用于求解复杂的数学问题。相比于传统方法,遗传算法摒弃了盲目的穷举或完全随机的求解策略,借鉴了自然界优胜劣汰、自然进化的思想,快速逼近最优解。上文对遗传算法的基本内容进行了介绍&#xff0…

JAVA面试常考系列十一

转载自 JAVA面试常考系列十一 题目一 什么是JSP? JSP(Java Server Page)是一个文本文档,是一种将静态内容和动态生成内容混合在一起的技术。 JSP包含两种类型的文本:静态数据和JSP元素。静态数据可以用任何基于文本的格式表示,如H…

.NET跨平台实践:用C#开发Linux守护进程

Linux守护进程(Daemon)是Linux的后台服务进程,它脱离了与控制终端的关联,直接由Linux init进程管理其生命周期,即使你关闭了控制台,daemon也能在后台正常工作。 一句话,为Linux开发与控制台无关…

ThreadLocalRandom与Random区别

转自: 一文秒懂 Java ThreadLocalRandom - Java 一文秒懂 - 简单教程,简单编程随机数生成是一个非常常见的操作,而且 Java 也提供了 java.util.Random 类用于生成随机数,而且呢,这个类也是线程安全的,就是…

python自动配置文件_【python接口自动化】- ConfigParser配置文件的使用

前言:目前我们使用的绝大多数计算机程序,无论是办公软件,浏览器,甚至游戏、视频都是通过菜单界面系统配置的,它几乎成了我们使用机器的默认方式。而在python中,也有这样的一个配置模块可以把代码可配置化。…

JAVA面试常考系列十

转载自 JAVA面试常考系列十 题目一 Servlet是什么? Servlet(Server Applet)是Java Servlet的简称,称为小服务程序或服务连接器,是用Java编写的服务器端程序,主要的作用是处理客户端请求并生成动态Web内容。…

DotNet 资源大全

Awesome DotNet,这又是一个 Awesome XXX 系列的资源整理,由 quozd 发起和维护。内容包括:编译器、压缩、应用框架、应用模板、加密、数据库、反编译、IDE、日志、风格指南等。 伯乐在线已在 GitHub 上发起「DotNet 资源大全中文版」的整理。欢…

javabean与json转换(fastjson与jackson两个版本)

【README】 本文演示了 javabean与json转换的开发方式&#xff1b; 要想 javabean的属性名 与 json的字段名不一致&#xff0c;也是可以转换的&#xff1b; 之前需要引入 ali.fastjson <dependency><groupId>com.alibaba</groupId><artifactId>fas…

mysql数据库新建一个递增的_分享一个mysql实验—基于数据库事务隔离级别RR及RC的测试...

概述今天主要分享一个最近做的实验&#xff0c;主要是测试mysql数据库在RR和RC不同事务隔离级别下的表现。MySQL使用可重复读来作为默认隔离级别的主要原因是语句级的Binlog。RR能提供SQL语句的写可串行化&#xff0c;保证了绝大部分情况(不安全语句除外)的DB/DR一致。下面以my…

直面Java第45期

转载自 直面Java第45期

ABP框架搭建项目系列教程基础版

我现在要着手一个新的项目&#xff0c;也打算用这个框架&#xff0c;所以想要将我一步一步用这个框架的做项目的步骤和想法跟大家分享出来。 经过前面十二篇的基础教程&#xff0c;现在终于该做个总结了。 第一篇&#xff0c;我们建议新手朋友们先通过ABP官网的启动模板生成解决…

字节数组转jsonobject(如读取HttpServletRequest.inputstream到jsonobject)

【README】 本文po出了 如何读取 字节数组到jsonobject&#xff1b; 字节数组如何获取&#xff0c;本文不再赘述&#xff1b; 【1】代码 /*** Description 字节数组转json演示* author xiao tang* version 1.0.0* createTime 2022年02月11日*/ public class ByteArr2JsonDem…

sql server 2008安装_性能不够?基于时序数据库的Zabbix 5.2安装指南

我们往往在谈论zabbix的优缺点的时候&#xff0c;提到最多的依然还是数据库(默认采用关系型数据库)&#xff0c;由于关系型数据库所有的读写都是采用sql语句解析&#xff0c;一但并发过大或者数据量过大&#xff0c;处理能力就显得捉襟见肘&#xff0c;这也是Zabbix让人诟病的地…

对象并不一定都是在堆上分配内存的

转载自 对象并不一定都是在堆上分配内存的 JVM内存分配策略 关于JVM的内存结构及内存分配方式&#xff0c;不是本文的重点&#xff0c;这里只做简单回顾。以下是我们知道的一些常识&#xff1a; 1、根据Java虚拟机规范&#xff0c;Java虚拟机所管理的内存包括方法区、虚拟机栈、…