Java中级面试题记录(四)

news2024/11/16 9:42:47

一面面试题

1.Innodb的行数据存储模式

https://baijiahao.baidu.com/s?id=1775090633458928876&wfr=spider&for=pc

2.行数据包含哪些信息?

https://baijiahao.baidu.com/s?id=1775090633458928876&wfr=spider&for=pc

3.MySQL在进行存储VARCHAR的时候,如果存的长度和设计的长度不一致时,如何进行寻址的

在MySQL中,当你存储一个VARCHAR数据类型时,实际存储的长度是根据你实际存储的数据长度决定的,而不是根据你为该字段指定的最大长度。因此,当你存储长度小于最大长度的数据时,MySQL不会浪费空间来存储未使用的字节。
当你在查询数据时,MySQL会根据实际存储的数据长度来寻址。它会使用一个附加的字节来存储实际数据长度,这个字节位于VARCHAR值的前面。MySQL使用这个实际数据长度来定位到正确的字节位置,以便正确地读取和解析数据。
因此,即使你存储的字符串长度与你在表定义中指定的最大长度不一致,MySQL仍然能够正确地寻址和读取数据。

4.MySQL中行数据的null是如何存储的?

对于InnoDB存储引擎,NULL值在行数据中占用一个特殊的字节表示。这个字节被标记为“NULL”标志,以区别于其他类型的值。在查询数据时,MySQL会检查这个字节的状态,以确定该字段是否为NULL。

5.MySQL中null如何检索的?

在这里插入图片描述

6.MySQL中如何把null排在最前面?

在MySQL中,默认情况下,NULL值被视为最小值,即它们排在所有其他值的前面,也可以使用以下方法手动排序,
因为MySQL中不像Orcal支持nulls first和nulls last语法,因此可以改变写法实现指定Null的排序:

  • null排在前面: order by IF(ISNULL(my_field),0,1),my_field;
  • null排在后面: order by IF(ISNULL(my_field),1,0),my_field;

7.排序时,假如成绩表,对成绩排序,只想让80-90的排在最前面,怎么排?

方式一:
先将80-90分数的查询出来,然后使用UNION 关联剩余人员成绩
方式二:
排序时使用判断语句CASE ,给80-90分的设置一个最高的值 ,然后按照降序排列
方式三:
通过filed函数来进行指定排序

8.MySQL如何进行特定排序,比如将用户订单最多的排在最前面?如果客户和订单都比较多时排序?

先对订单表进行分组查询,统计出每个客户对应的订单数量并进行升序排列
然后在程序中补全客户信息

9.GROUP之后再进行排序,如何实现?

直接在SQL语句后边添加ORDER BY 语句

10.B+树的特别和B树的区别?

B+树的非叶子节点不会存储行数数据,B树的非叶子节点会存储行数据
B+的叶子节点是双向链表

11.组合索引查询数据的过程?

12.批量2000W条的数据弄到内存中处理,比如更新某一个字段的状态?

13.比如客户表2000W 订单表5000W ,要求10分钟内将客户的订单数量大于10的更新为1星客户?

14.慢查询SQL如何进行优化?单SQL就很慢,并且SQL已经没有优化空间了,该如何处理?

15.JAVA线程池的拒绝策略有几种?默认的是哪种?

16.线程池的阻塞队列类型有几种?

  • LinkedBlockingQueue
  • SynchronousQueue
  • ArrayBlockingQueue

17.我想先进来的任务最后执行?该用哪种类型的结构更合适?

LinkedBlockingDeque

18.线程之间的通讯(主线程和子线程)?

  • 用volatile变量修饰公共变量
  • 通过原子引用类的公共变量
  • 通过ITL或者TTL修饰的公共变量
  • 通过 Object类的 wait/notify 方法
  • 使用JUC包中的Condition的await方法让线程等待,使用signal方法唤醒线程
  • 使用LockSupport类中的park和unpark来实现

19.开启子线程的时候,想在子线程中获取主线程中结果?

  • 用volatile变量修饰公共变量
  • 通过原子引用类的公共变量
  • 通过ITL或者TTL修饰的公共变量

20.MQ除了RabbitMQ外还熟悉其它的MQ吗?

21.如何解决重复发送消息的问题?

每个消息都设置一个全局唯一标识,这样即使出现重复投递的现象,只要我们在消费端保证不重复消费就行

22.MyBatis的类型转换有没有做了解,项目中有用过吗?

地图字段、json类型字段

23.请求接口的加解密有用过吗,我想所有请求的请求参数和响应参数都加密该如何处理?

24.Springboot的自动装配?

Springboot项目启动后会扫描所有jar包里面META-INF文件夹下面的spring.factories文件,从文件中获取需要进行自动装配的类,然后再根据项目pom文件中引入的starter和配置文件中的配置自动生成对应装配的bean到ioc容器中。

25.@Configuration和@ConfigurationProperties区别?

@Configuration用于定义配置类,可替换xml配置文件,被注解的类内部包含有一个或多个被@Bean注解的方法,这些方法返回的对象将被纳入到IOC容器中
@ConfigurationProperties的作用是将配置文件中的相关配置与类中的属性进行绑定,便于读取或修改配置。

26.@Configuration和@Compoment的区别?@Compoment的类下面定义@Bean可以被扫描到吗?

被@Compoment修饰的类将会被纳入到IOC容器中
可以

27.Java的接口中是否可以存在普通方法?

可以

28.两个接口中存在一模一样的方法,一个类同时实现这个2个接口,可以吗?

可以

二面面试题

1.说一下项目的技术栈?Nacos的版本

2.项目中你主要负责的哪个部分?

3. 1.X的Nacos中的服务关闭后,但是nacos会有缓存,如果此时数据打到该该服务上,你们如何解决这个问题的?

4.你们项目里面如何排查生产问题在哪个服务?

5.项目中seata主要是解决什么场景的?

6.seata是如何保证数据的一致性,seata的工作原理?

7.微服务的服务降级如何进行配置的,什么情况下会进入到fallback里面去?

8.如何区分上游服务调用时是调用超时 还是自定义的业务异常?

9.分布式锁是如何实现的,使用redisson和自己用Redis写的分布式的区别在哪儿?

10.setnx 命令实现分布式锁和使用lua脚本实现分布式锁的区别是什么?

11.生产上FULLGC太频繁了,该如何进行优化呢?

在这里插入图片描述

12.为什么幸存者区会有2个,而且都比较小?

13.线程池使用有没有什么经验?最大线程数的设置?

14.让你设计一个动态的可配置的数据权限,你会怎么设置?

15.MQ如何保证不丢失消息?

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

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

相关文章

qq怎么发长视频?超级好用!

在平时的工作和生活中,我们会想分享一些比较长的内容。但是我们会发现视频文件过大,可能会超过腾讯规定的单次发送文件的大小限制,导致无法发送成功。这时候就需要借助一些视频压缩工具,下面介绍了四种方法,一起来看看…

浅谈信息化与数字化

一、信息化/数字化的概念 信息化、数字化按字面意思理解,这两个词的确代表了不同的含义。但是也不可否认,在目前我们可以接触到的信息平台来看。信息化、数字化很多时候都被混在一起了。 那么,既然今天要聊这个话题。我们得先把这两个词分清…

【C++】:拷贝构造函数与赋值运算符重载的实例应用之日期类的实现

C实现日期类 ├─属性: │ ├─年份 │ ├─月份 │ └─日期 ├─方法: │ ├─构造函数 │ ├─拷贝构造函数 │ ├─析构函数 │ ├─设置年份 │ ├─设置月份 │ ├─设置日期 │ ├─获取年份 │ ├─获取月份 │ ├─获取日期 │ ├…

mysql-linux归档版安装

什么是归档版安装?简单来说就是编译好的软件压缩打包版。 说明:我这里服务器之前已经装过一个不同版本的mysql,已经占用了3306端口,所以这里我用3307端口来演示,命令和官方的稍有不同,不过步骤都是差不多的…

next项目部署到云服务器上(手动)

准备环境: 云服务器 ECS,服务器安装好了docker 自己的next项目 开始: 1.在next项目根目录下创建Dockerfile文件 FROM node:18-alpine AS base# Install dependencies only when needed FROM base AS deps # Check https://github.com/nodejs/docker-node/tree/b4117f9333d…

SpringMVC Day 05 : Spring 中的 Model

前言 欢迎来到 SpringMVC 系列教程的第五天!在之前的教程中,我们已经学习了如何使用控制器处理请求和返回视图。今天,我们将深入探讨 Spring 中的 Model。 在 Web 应用程序开发中,数据的传递和展示是非常重要的。SpringMVC 提供…

flutter版本选择

使用命令dart --version查看dart版本 使用命令flutter doctor查看flutter版本 Flutter 有 3 个发布渠道,分别是 stable、beta 和 master。我们推荐使用 stable 渠道除非你需要体验最新更新的 Flutter 特性。 要查看你当前使用的哪个渠道,使用下面的命令&…

山西电力市场日前价格预测【2023-10-28】

日前价格预测 预测说明: 如上图所示,预测明日(2023-10-28)山西电力市场全天平均日前电价为324.42元/MWh。其中,最高日前电价为601.09元/MWh,预计出现在18:15。最低日前电价为0.00元/MWh,预计出…

微信native支付对接

简介 Native支付是指商户系统按微信支付协议生成支付二维码,用户再用微信“扫一扫”完成支付的模式。 应用场景 Native支付适用于PC网站、实体店单品或订单、媒体广告支付等场景,用户扫描商户展示在各种场景的二维码进行支付。聚体步骤如下: 1.商户根据微信支付的规则,…

【EI会议投稿】第三届电气、控制与信息技术国际学术会议(ECITech 2024)

第三届电气、控制与信息技术国际学术会议(ECITech 2024) 2024 3rd International Conference on Electrical, Control and Information Technology 继往届ECITech年度系列会议的成功举办,第三届电气、控制与信息技术国际学术会议&#xff08…

JTAG 详解

10.1 JTAG简介 JTAG接口的基本工作原理是:在芯片内部定义一个TAP(Test Access Port,测试访问端口),开发人员使用连接到芯片的JTAG外部接口上的JTAG调试器,通过访问芯片内部的TAP端口来扫描芯片内部各个扫…

数据驱动决策:大数据分析如何塑造业务成功

文章目录 大数据分析的定义大数据分析如何影响业务1. 洞察业务趋势2. 提高决策质量3. 优化运营效率4. 个性化客户体验5. 发现新商机 如何利用大数据分析实现业务成功1. 收集和整合数据2. 选择适当的工具和技术3. 制定数据策略4. 建立数据分析团队5. 进行实验和反馈 大数据分析的…

激活函数作用以及 sigmoid和softmax

激活函数 激活函数在神经网络中起着非常重要的作用,它的主要功能是引入非线性性质,使得神经网络可以学习和表示更加复杂的模式和关系。下面是激活函数的几个主要作用: 引入非线性:激活函数通过引入非线性变换,打破了…

java.sql.SQLException: ORA-28000: the account is locked

1.遇到的问题 Oracle执行报下面的错误 java.sql.SQLException: ORA-28000: the account is locked 2.解决办法 登录sysdba管理账号,执行下面命令。 alter user demo account unlock;

NPDP产品经理证书值得考吗?

NPDP(New Product Development Professional)证书是由新产品开发专业协会(PDMA)提供的一项专业认证。对于那些在产品开发领域寻求进一步发展的人来说,考取这个证书可能是一个值得考虑的选择。 首先,NPDP证…

以“降本增效”为目标,智能视频监控能为企业带来哪些经济价值?

随着经济的发展和科技的进步,企业需要不断提升自身的品质和效率,以保持竞争优势。而智能视频监控技术正是一项值得考虑的工具,其对企业带来的降本增效效益可以通过以下几个方面来体现。 1、降低运行成本 EasyCVR智能视频监控平台可以实现远程…

Mysql数据库 5.SQL语言聚合函数 语言日期-字符串函数

一、聚合函数 SQL中提供了一些可以对查询的记录的列进行计算的函数——聚合函数 1.count() 统计函数,统计满足条件的指定字符的值的个数 统计表中rebirth_mood个数 select count(列名) from 表名; #统计表中rebirth_namelcl的个数 select …

亚马逊发布Q3财报,营收利润强劲,云业务增长缓慢

KlipC报道:10月26日,亚马逊发布财报显示,该公司2023年第三季度每股收益0.94美元,营收同比增13%至1431亿美元,营业利润率7.8%远超预期的5.46%,均高于预期。 KlipC的合伙人Andi D表示:“三季度盈利…

S-3A5001 DPDK性能优化

一、已知问题 1. 7A1000桥片总带宽约20G, 7A2000桥片总带宽约40G 2. 7A1000桥片单槽无法跑满2个10G口,需要用双槽来跑,每个槽用1个port 二、 板卡当前状态 用双槽单port模式测试丢包 调试方案1:配置HT拆包寄存器 busybox devm…