mysql数据库优化及sql调优,Java后端社招面试经历

Redis

  • 什么是Redis?
  • Redis的数据类型?
  • 使用Redis有哪些好处?
  • Redis相比Memcached有哪些优势?
  • Memcache与Redis的区别都有哪些?
  • Redis是单进程单线程的?
  • 一个字符串类型的值能存储最大容量是多少?
  • Redis的持久化机制是什么?各自的优缺点?
  • Redis常见性能问题和解决方案:
  • redis过期键的删除策略?
  • Redis的回收策略(淘汰策略) ?
  • 为什么Redis需要把所有数据放到内存中?
  • Redis的同步机制了解么?
  • Pipeline有什么好处,为什么要用pipeline?
  • 是否使用过Redis集群,集群的原理是什么?
  • Redis集群方案什么情况下会导致整个集群不可用?
  • Redis支持的Java客户端都有哪些?官方推荐用哪个?
  • Jedis与Redisson对比有什么优缺点?
  • Redis如何设置密码及验证密码?
  • 说说Redis哈希槽的概念?
  • Redis集群的主从复制模型是怎样的?
  • Redis集群会有写操作丢失吗?为什么?
  • Redis集群之间是如何复制的?
  • Redis集群最大节点个数是多少?
  • Redis集群如何选择数据库?
  • 怎么则试Redis的连通性?
  • 怎么理解Redis事务?
  • Redis事务相关的命令有哪几个?
  • Redis key的过期时间和永久有效分别怎么设置?
  • Redis如何做内存优化?
  • Redis回收进程如何工作的?
  • 都有哪些办法可以降低Redis的内存使用情况呢?
  • Redis的内存用完了会发生什么?

image.png

MySQL

  • MySQL中有哪几种锁?
  • MySQL中有哪些不同的表格?
  • 简述在MySQI数据库中MyISM和InnoDB的区别
  • MySQL中InmnoDB支持的四种事务隔离级别名称,以及逐级之间的区别?
  • CHAE和VARCHR的区别?
  • 主键和候选键有什么区别?
  • myi samchk是用来做什么的?
  • 如果一个表有一-列定义为TIMESTAMP, 将发生什么?
  • 你怎么看到为表格定义的所有索引?
  • IIK声明中的%和是什么意思?
  • 列对比运算符是什么?
  • BLOB和TEXT有什么区别?
  • MySQL_ fetch_ arr ay和MySQL_ fetch_ object的区别是什么?
  • MyISAM表格将在哪里存储,并且还提供其存储格式?
  • MySQL如何优化DISTINCT?
  • 如何显示前50行?
  • 可以使用多少列创建索引?
  • NOW ()和CURRENT DATE ()有什么区别?
  • 什么是非标准字符串类型?
  • 什么是通用SQL函数?
  • MySQL支持事务吗?
  • MySeL里记录货币用什么字段类型好
  • MySQL有关权限的表都有哪几个?
  • 列的字符串类型可以是什么?
  • MySQI数据库作发布系统的存储,一天五万条以上的增里,预计运维三年,怎么优化?
  • 锁的优化策略

image.png

Spring

  • 什么是spring?
  • 使用Spring框架的好处是什么?
  • Spr ing由哪些模块组成?
  • 核心容器(应用上下文)模块。
  • BeanFactory – BeanFactory 实现举例。
  • XMLBeanFactory
  • 解释AP模块
  • 解释JBC抽象和DAD模块。
  • 解释对象/关系映射集成模块。
  • 解释WEB模块。
  • Spring置文件
  • 什么是Spring IOC容器?
  • IOC的优点是什么?
  • ApplicationContext通常的实现是什么?
  • Bean工厂和Applicati on contexts 有什么区别?
  • 一个Spring的应用看起来象什么?
  • 什么是Spring的依赖注入?
  • 有哪些不同类型的IOC (依赖注入)方式?
  • 哪种依赖注入方式你建议使用,构造器注入,还是Setter方法注入?Spring Beans
  • 什么是Spring beans?
  • 一个Spring Bean定义包含什么?
  • 如何给Spring容器提供配置元数据?
  • 你怎样定义类的作用域?
  • 解释Spring支持的几种bean的作用域。

image.png

Java核心知识点

Java核心知识点共29个技术模块,从各个角度深入浅出,对重点难点进行全方面解读,图文结合,通俗易懂,让学习成为一种享受。

image.png

JVM

  1. 线程
  2. JM内存区域
  3. JVM运行时内存
  4. 垃圾回收与算法
  5. JAVA 四中引用类型
  6. GC分代收集算法vS 分区收集算法
  7. GC垃圾收集器
  8. JAVA I0/NI0
  9. JVM类加载机制

image.png

Java多线程/并发

  1. JAVA并发知识库
  2. JAVA线程实现/创建方式
  3. 4种线程池
  4. 线程生命周期(状态)
  5. 终止线程4种方式
  6. sleep与wait区别
  7. start与run区别
  8. JAVA后台线程
  9. JAVA锁
  10. 线程基本方法
  11. 线程上下文切换
  12. 同步锁与死锁
  13. 线程池原理
  14. JAVA阻塞队列原理
  15. Cycli cBarrier、CountDownLatch、Semaphor e的用法
  16. volatile关键字的作用(变量可见性、禁止重排序)
  17. 如何在两个线程之间共享数据
  18. ThreadLoca1作用 (线程本地存储)
  19. synchr oni ze Reentr antLock的区别
  20. Concur entHashMlap并发
  21. Java中 用到的线程调度
  22. 进程调度算法
  23. 什么是CAS (比较并交换-乐观锁机制-锁自旋)
  24. 什么是AQS (抽象的队列同步器)

image.png

Spring Boot

  • 什么是Spring Boot?
  • 为什么要用Spr ingBoot
  • Spring Boot有哪些优点?
  • Spring Boot的核心注解是哪个?它主要由哪几个注解组成的?
  • 运行Spring Boot有哪几种方式
  • 如何理解Spring Boot中的Starters?
  • 如何在Spring Boot启动的时候运行一些特定的代码?
  • Spring Boot需要独立的容器运行吗?
  • Spring Boot中的监视器是什么?
  • 如何使用Spring Boot实现异常处理?
  • 你如何理解Spring Boot 中的Starters
  • Springboot常用的star ter有哪些
  • Spr ingBoot实现热部署有哪几种方式
  • 如何理解Spring Boot配置加载顺序
  • Spring Boot的核心配置文件有哪几个?它们的区别是什么?
  • 如何集成Spring Boot和ActiveMQ
  • 什么是JavaConfig?
  • 如何重新加载Spring Boot上的更改,而无需重新启动服务器?
  • Spring Boot中的监视器是什么?
  • 如何在Spring Boot中禁用Actuator 端点安全性?
  • 如何在自定义端口上运行Spring Boot 应用程序?
  • 什么是YAML?
  • 如何实现Spring Boot应用程序的安全性?
  • 如何集成Spring Boot和ActiveMQ?
  • 如何使用Spring Boot 实现分页和排序?
  • 什么是Swagger? 你用Spring Boot实现了它吗?

image.png

微服务

  • PACT 在微服务架构中的用途是什么?
  • 微服务架构有哪些优势?
  • 微服务有哪些特点?
  • 设计微服务的最佳实践是什么?
  • 微服务架构如何运作?
  • 微服务架构的优缺点是什么?
  • 单片,SOA和微服务架构有什么区别?
  • 在使用微服务架构时,您面临哪些挑战?
  • SOA和微服务架构之间的主要区别是什么?
  • 微服务有什么特点?
  • 什么是领域驱动设计?
  • 为什么需要域驱动设计(DDD) ?
  • 什么是无所不在的语言?
  • 什么是凝聚力?
  • 什么是耦合?
  • 什么是reST 1 RESTful 以及它的用途是什么?
  • 你对Spring Boot 有什么了解?
  • 什么是Spring 引导的执行器?
  • 什么是Spring Cloud?
  • Spring Cloud解决了哪些问题?
  • 在Spring MVC应用程序中使用WebMvcTest 注释有什么用处?
  • 你能否给出关于休息和微服务的要点?
  • 什么是不同类型的微服务测试?
  • 您对Distributed Transaction有何了解?
  • 什么是Idempotence 以及它在哪里使用?
  • 什么是有界上下文?
  • 什么是双因素身份验证?

image.png

Mybatis

  • 什么是Mybatis?

  • Mybaits的优点

  • MyBatis框架的缺点

  • MyBatis框架适用场合

  • MyBatis与Hibernate有哪些不同?

  • 当实体类中的属性名和表中的字段名不一样,怎么办?

  • 模糊查询like语句该怎么写?

  • 通常-个Xml 映射文件,都会写-个Dao接口与之对应,请问,这个Dao接口的工作原理是什么? Dao接口里的方法,参数不同时,方法能重载吗?

  • 如何获取自动生成的(住)键值?

  • 在mapper中如何传递多个参数?

  • Mybatis动态sql有什么用?执行原理?有哪些动态sql?

  • Xml映射文件中,除了常见的select |insert |updse |delete标签之外,还有哪些标签?

  • Mybatis的Xml 映射文件中,不同的Xml 映射文件,id是否可以重复?

  • 为什么说Mybatis是半自动ORM映射工具?它与全自动的区别在哪里?

  • 一对一、一对多的关联查询?

  • MyBatis实现-对一有几种方式?具体怎么操作的?

  • MyBatis实现一对多有几种方式怎么操作的?

  • Mybatis 是否支持延迟加载?如果支持,它的实现原理是什么?

  • Mybatis的一级、二级缓存

  • 什么是MyBatis的接口绑定?有哪些实现方式?

  • 使用MyBatis 的mapper 接口调用时有哪些要求?

  • Mapper编写有哪几种方式?

image.png

写在最后

作为一名即将求职的程序员,面对一个可能跟近些年非常不同的 2019 年,你的就业机会和风口会出现在哪里?在这种新环境下,工作应该选择大厂还是小公司?已有几年工作经验的老兵,又应该如何保持和提升自身竞争力,转被动为主动?

就目前大环境来看,跳槽成功的难度比往年高很多。一个明显的感受:今年的面试,无论一面还是二面,都很考验Java程序员的技术功底。

最近我整理了一份复习用的面试题及面试高频的考点题及技术点梳理成一份“Java经典面试问题(含答案解析).pdf和一份网上搜集的“Java程序员面试笔试真题库.pdf”(实际上比预期多花了不少精力),包含分布式架构、高可扩展、高性能、高并发、Jvm性能调优、Spring,MyBatis,Nginx源码分析,Redis,ActiveMQ、Mycat、Netty、Kafka、Mysql、Zookeeper、Tomcat、Docker、Dubbo、Nginx等多个知识点高级进阶干货!

由于篇幅有限,为了方便大家观看,这里以图片的形式给大家展示部分的目录和答案截图!

Java经典面试问题(含答案解析)

阿里巴巴技术笔试心得

Kafka、Mysql、Zookeeper、Tomcat、Docker、Dubbo、Nginx等多个知识点高级进阶干货!**

由于篇幅有限,为了方便大家观看,这里以图片的形式给大家展示部分的目录和答案截图!
[外链图片转存中…(img-HYsqct2e-1709141679809)]

Java经典面试问题(含答案解析)

[外链图片转存中…(img-VPMlVoif-1709141679809)]

阿里巴巴技术笔试心得

[外链图片转存中…(img-rNZBjHDE-1709141679809)]

本文已被CODING开源项目:【一线大厂Java面试题解析+核心总结学习笔记+最新讲解视频+实战项目源码】收录

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

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

相关文章

docker容器配置mysql5.7主从复制

介绍 本文将通过docker创建3个mysql数据库容器,实现数据库主从复制功能,三个数据库容器分别为主库mysql-master:3307,从库mysql-slave-01:3308,mysql-slave-02:3309。使用的是mysql5.7版本 1. 拉取mongo镜像 docker pull mysql…

万能引用、完美转发及其关系

万能引用 为什么需要万能引用。首先看下面三个函数模板&#xff0c;分别输入左值和右值&#xff0c;有哪些可以通过编译。 // 左值引用 template <typename T> void fun(T& x){return ;}// 常量引用 template <typename T> void fun1(const T& x){return…

《Vite 基础知识》关于 .mjs .cjs 文件引出 NodeJS 对JS模块加载的思考(CommonJS 和 ESM)

前言 学习 Webpack/Vue2 升级 Vite/Vue3 时&#xff0c;发现以下不同&#xff1a; 新建的 Vitepress 项目默认创建了 config.mjs 文件&#xff1b; 新建的 Vite/Vue3 项目&#xff0c;package.json 中默认加上 type: module 配置&#xff1b; 新建的 Vite/Vue3 项目&#xf…

堆之大顶堆的介绍与实现

定义 堆是一棵完全二叉树&#xff0c;它大顶堆与小顶堆两类。 其中&#xff0c;大顶堆是指根结点比子结点均大的树。 创建 思路&#xff1a; 1.比较结点的左右孩子&#xff0c;记录较大值的下标。 2.将结点与该下标对应的值进行比较。若是孩子>结点&#xff0c;交换位置&…

【网络那些事】

【云计算】 云计算&#xff1a;把计算资源放在某个地方&#xff0c;并通过互联网暴露出来&#xff0c;让用户可以按需使用计算资源的方式&#xff0c;就是所谓的云计算 云计算的三种服务&#xff1a; 云平台专业名词 日常叫法 亚马逊云叫法 云服务器 ECS &#xff08;Elas…

循环结构:for循环,while循环,do-while,死循环

文章目录 for循环for案例&#xff1a;累加for循环在开发中的常见应用场景 whilewhile循环案例&#xff1a; for和while的区别&#xff1a;do-while三种循环的区别小结死循环 快捷键 ctrlaltt for循环 看循环执行多少次&#xff0c;就看有效数字有几个 快捷键 fori 示例代码&am…

Vuepress的使用

介绍 将markdown静态资源转换成html。 动态资源的转换还有很多&#xff0c;为什么要使用Vuepress&#xff1f; 目录分析 项目配置 详情 具体配置请看文档 插件配置 vuepress-theme-vdoing 主题插件 npm install vuepress-theme-vdoing -D先安装依赖配置主题 使用vuep…

MAC | linux | SSH 密钥验证

SSH密钥登陆过程 客户端通过ssh-keygen生成自己的公钥和私钥。手动将客户端的公钥放入远程服务器的指定位置。客户端向服务器发起 SSH 登录的请求。服务器收到用户 SSH 登录的请求&#xff0c;发送一些随机数据给用户&#xff0c;要求用户证明自己的身份。客户端收到服务器发来…

论文设计任务书学习文档|基于智能搜索引擎的图书管理系统的设计与实现

文章目录 论文(设计)题目:基于智能搜索引擎的图书管理系统的设计与实现1、论文(设计)的主要任务及目标2、论文(设计)的主要内容3、论文(设计)的基本要求4、进度安排论文(设计)题目:基于智能搜索引擎的图书管理系统的设计与实现 1、论文(设计)的主要任务及目标 …

报错:板端IP与PC的IP相同

报错&#xff1a; 配置 实际上我配置并没有错。 服务器IP&#xff08;就是本机&#xff09;、板端IP、网关。 解决 我网卡配置了多个IP。一番删除添加还是报错。 于是点击服务器IP&#xff0c;换成别的&#xff0c;再换回来&#xff0c;可以了&#xff1a;

架构面试题汇总:并发和锁(三)

在现代软件开发中&#xff0c;并发编程和多线程处理已成为不可或缺的技能。Java作为一种广泛使用的编程语言&#xff0c;提供了丰富的并发和多线程工具&#xff0c;如锁、同步器、并发容器等。因此&#xff0c;对于Java开发者来说&#xff0c;掌握并发编程和多线程处理的知识至…

【并发编程】深入理解ReentrantLock使用方法与原理解析(1)

引言 多线程编程中&#xff0c;为了保证线程安全&#xff0c;我们通常需要使用锁来协调对共享资源的访问。ReentrantLock&#xff08;可重入锁&#xff09;是Java提供的一种高级锁机制&#xff0c;相比于传统的synchronized关键字&#xff0c;它提供了更多的灵活性和控制。本文…

【大数据架构(3)】Lambda vs. Kappa Architecture-选择你需要的架构

文章目录 一. Data Processing Architectures1. Lambda Architecture1.1. 架构说明a. Data Ingestion Layerb. Batch Layer (Batch processing)c. Speed Layer (Real-Time Data Processing)d. Serving Layer 1.2. Lambda Architecture的优缺点1.3. 使用案例 2. Kappa Architect…

HTML+CSS+JS:花瓣登录组件

效果演示 实现了一个具有动态花朵背景和简洁登录框的登录页面效果。 Code <section><img src"./img/background.jpeg" class"background"><div class"login"><h2>Sign In</h2><div class"inputBox"…

重拾前端基础知识:CSS3

重拾前端基础知识&#xff1a;CSS3 前言边框圆角阴影图片 背景渐变文本字体多列动画与过渡2D 转换3D 转换过渡动画 网格布局弹性盒子&#xff08;重点&#xff09;父元素设置子元素设置 响应式设计设置 Viewport构建响应式网格视图12栅格媒体查询 案例讲解图片按钮分页 浏览器支…

python数据分析numpy基础之argmin求数组最小值索引

1 python数据分析numpy基础之argmin求数组最小值索引 python的numpy库的argmin()函数&#xff0c;用于获取沿指定轴的最小值的索引。 用法 numpy.argmin(a, axisNone, outNone, *, keepdims<no value>)描述 argmin()返回沿指定轴的最小值的索引。 入参axis表示指定轴…

【矩阵】计算矩阵边缘元素之和

每日一道算法题之计算矩阵边缘元素之和 一、题目描述二、思路三、C代码 一、题目描述 题目来源&#xff1a;洛谷 输入一个整数矩阵&#xff0c;计算位于矩阵边缘的元素之和。 所谓矩阵边缘的元素&#xff0c;就是第一行和最后一行的元素以及第一列和最后一列的元素。 C程序要求…

Windows 10中Visual Studio Code(VSCode)无法自动打开终端的解决办法

1.检查设置&#xff1a; 打开VSCode。点击左侧菜单栏的“文件”&#xff08;File&#xff09;。选择“首选项”&#xff08;Preferences&#xff09;。点击“设置”&#xff08;Settings&#xff09;。在搜索框中输入“shell”&#xff0c;然后点击“settings.json”进行编辑。…

学习鸿蒙基础(6)

一、Prop属性 父——>子 单向同步 Prop装饰的变量可以和父组件建立单向的同步关系。Prop装饰的变量是可变的&#xff0c;但是变化不会同步回其父组件。Prop装饰的变量和父组件建立单向的同步关系。Prop变量允许在本地修改&#xff0c;但修改后的变化不会同步回父组件。当父组…

【MATLAB】SVMD_ MFE_SVM_LSTM 神经网络时序预测算法

有意向获取代码&#xff0c;请转文末观看代码获取方式~也可转原文链接获取~ 1 基本定义 SVMD_MFE_SVM_LSTM神经网络时序预测算法结合了单变量分解&#xff08;SVMD&#xff09;、多尺度特征提取&#xff08;MFE&#xff09;、聚类后展开支持向量机&#xff08;SVM&#xff09;…