当前位置: 首页 > news >正文

Java程序员面试题

Java程序员面试题目

  • 1.Java基础
        • 1.1 Java有list,list有很多种,你平时开发喜欢用哪个list?(容易)
        • 1.2 Java的map,你知道有哪几种map,你平时喜欢用哪个?(容易)
  • 2.Spring基础
        • 2.1 你用spring boot如何写一个接口?(基础)
        • 2.2 get请求的话怎么写?(容易)
        • 2.3 那么get请求如何传参?(容易)
        • 2.4 post请求呢?(容易)
        • 2.5 post请求如何传参?(容易)
        • 2.6 put请求和delete请求了解多少?(困难)
  • 3.mybatis基础
        • 3.1 使用mybatis里如何给sql传参?(容易)
        • 3.2 spring boot如何才能扫到我写的mybatis?(容易)
        • 3.3 #{}会失效你知道吗?怎么解决?(困难,没遇到过不用答)
  • 4.spring进阶
        • 4.1 需要对接这样一个接口,如何实现,不用说的详细,甚至方法名也不用说,说下大致?(基础)
        • 4.2 如果这个接口还需要Authorization认证呢?(困难,没遇到过不用答)
        • 4.3 如果它还是个https接口呢?你会怎么做?(困难,没遇到过不用答)
  • 5.内功(闲聊)
        • 5.1 Java生成excel你会用什么技术?(困难,不会不答)
        • 5.2 你实际开发用过什么技术生成excel?(困难,没遇到需要让用Java制造excel不用答)
        • 5.3 你知道数组和链表吗?有什么区别?(地狱,倘若分不清不用回答,此问题为问题5.4做铺垫)
        • 5.4 map和list,大体有如下两种。你说下数组类的list是哪个list类实现的?链表类的list是哪个实现类?他们各有什么优劣?(困难,答不出问题5.3也可以试着答下问题5.4)
        • 5.5 我们常用的hashmap底层是数组实现的还是链表实现的?(困难)
        • 5.6 你实际开发中是否创建过多线程?你实际开发当时是如何创建一个多线程的?(困难,倘若没实操过多线程不用答)
        • 5.7 用过markdown文档吗?(无聊问题)
        • 5.8 对jvm懂多少?(也许容易,也许地狱)
        • 5.9 了解jvm并不是面试造火箭,我这里有一个很实际的问题。我有一个8核8g的服务器和一个jar包,而jar包是运行在jvm之上的,你知道如何让jar包充分榨干这个8核8g的极限性能?(地狱,不知道不用答)
        • 5.10 了解juc吗?(地狱,不知道不用答)
        • 5.11 了解juc?那你知道比hashmap更高级的map叫什么吗?原子类,Java锁,分布式锁?(地狱,可以不答,了解juc的话,可以随便说说)
        • 5.12 你通常喜欢怎么部署项目?(也许容易,也许地狱)
        • 5.13 linux你喜欢用哪个?(无聊问题)
        • 5.14 linux删库跑路指令会写吗?(无聊问题)
        • 5.15 spring boot启动流程知道多少?(地狱)
        • 5.16 mysql调优?(也许容易,也许地狱)

实事求是,不要紧张,只需要展露自己最真实的一面,面试只是和未来同事之间的闲聊,答不上来不代表技术面试不通过,更不见得答上来的越多就越好

1.Java基础

1.1 Java有list,list有很多种,你平时开发喜欢用哪个list?(容易)

1.2 Java的map,你知道有哪几种map,你平时喜欢用哪个?(容易)

2.Spring基础

2.1 你用spring boot如何写一个接口?(基础)

2.2 get请求的话怎么写?(容易)

2.3 那么get请求如何传参?(容易)

2.4 post请求呢?(容易)

2.5 post请求如何传参?(容易)

2.6 put请求和delete请求了解多少?(困难)

3.mybatis基础

3.1 使用mybatis里如何给sql传参?(容易)

3.2 spring boot如何才能扫到我写的mybatis?(容易)

3.3 #{}会失效你知道吗?怎么解决?(困难,没遇到过不用答)

4.spring进阶

4.1 需要对接这样一个接口,如何实现,不用说的详细,甚至方法名也不用说,说下大致?(基础)

  • 接口路径是"http://vhzdlps4ci.sap.newgonow.cn:44300/sap?sap-client=800"

  • 需要传json

  • 给它发送post请求

4.2 如果这个接口还需要Authorization认证呢?(困难,没遇到过不用答)

4.3 如果它还是个https接口呢?你会怎么做?(困难,没遇到过不用答)

  • “https://vhzdlps4ci.sap.newgonow.cn:44300/sap?sap-client=800”

5.内功(闲聊)

5.1 Java生成excel你会用什么技术?(困难,不会不答)

5.2 你实际开发用过什么技术生成excel?(困难,没遇到需要让用Java制造excel不用答)

5.3 你知道数组和链表吗?有什么区别?(地狱,倘若分不清不用回答,此问题为问题5.4做铺垫)

5.4 map和list,大体有如下两种。你说下数组类的list是哪个list类实现的?链表类的list是哪个实现类?他们各有什么优劣?(困难,答不出问题5.3也可以试着答下问题5.4)

  • 一种是数组类的
  • 一种是链表类的

5.5 我们常用的hashmap底层是数组实现的还是链表实现的?(困难)

5.6 你实际开发中是否创建过多线程?你实际开发当时是如何创建一个多线程的?(困难,倘若没实操过多线程不用答)

5.7 用过markdown文档吗?(无聊问题)

5.8 对jvm懂多少?(也许容易,也许地狱)

5.9 了解jvm并不是面试造火箭,我这里有一个很实际的问题。我有一个8核8g的服务器和一个jar包,而jar包是运行在jvm之上的,你知道如何让jar包充分榨干这个8核8g的极限性能?(地狱,不知道不用答)

5.10 了解juc吗?(地狱,不知道不用答)

5.11 了解juc?那你知道比hashmap更高级的map叫什么吗?原子类,Java锁,分布式锁?(地狱,可以不答,了解juc的话,可以随便说说)

5.12 你通常喜欢怎么部署项目?(也许容易,也许地狱)


(时间充裕,还想水一会儿?答下如下问题?)

5.13 linux你喜欢用哪个?(无聊问题)

5.14 linux删库跑路指令会写吗?(无聊问题)

5.15 spring boot启动流程知道多少?(地狱)

5.16 mysql调优?(也许容易,也许地狱)

技术面试到此结束

相关文章:

Java程序员面试题

Java程序员面试题目 1.Java基础1.1 Java有list,list有很多种,你平时开发喜欢用哪个list?(容易)1.2 Java的map,你知道有哪几种map,你平时喜欢用哪个?(容易) 2.…...

【自动化剧本】Role角色

目录 一、Roles模块1.1roles的目录结构1.2roles 内各目录含义解释1.3在一个 playbook 中使用 roles 的步骤 二、使用Role编写LNMP剧本2.1 搭建Nginx角色2.2搭建Mysql角色2.3搭建php角色2.4lnmp剧本 一、Roles模块 roles用于层次性、结构化地组织playbook。roles能够根据层次型结…...

安全文件传输:如何避免数据泄露和黑客攻击

网络安全问题日益严重,导致许多数据被泄露和黑客袭击的事件频发。为了保证文件传输的安全,需要实施一系列安全文件传输策略来防止数据被泄露和黑客袭击。 第一、选择适合的加密方法是非常关键的 加密是一种将明文转换成密文的过程,这样只有授…...

web基础与http

一,dns与域名 网络基于tcp/ip协议进行通信和连接的,其中主机以ip地址做固定的地址标识,用以区分用户和计算机。ip地址是由32位二进制数组成,不方便记忆。为了方便记忆,采用了域名。但是网络通信的唯一标识是ip地址&…...

寒假作业(蓝桥杯2016年省赛C++A组第6题 )

题目: 注:蓝桥杯2016年省赛CA组第6题 请填写表示方案数目的整数。 题解: 由题可知这是一道全排列问题,因此我们可以使用c的next_permutation函数对于1-13的数字进行全排列即可,并每次排列判断是否满足题意。 注意…...

NUMA架构在kubernetes中的应用

numactl使用 numactl 通过将 CPU 划分多个 node 减少 CPU 对总线资源的竞争,一般使用在高配置服务器部署多个 CPU 消耗性服务使用。 numactl使用,numa常用命令,numa命令行使用 #numactl -H available: 2 nodes (0-1) node 0 cpus: 0 2 4 6 8 10 12 14 16 18 20 22 node 0…...

Gogs Git windos服务搭建指南

Gogs Git服务器搭建指南 背景: 近期在Linux 麒麟 v10 系统上开发;为了团队协同编程;选用了Git服务器;之前在windos开始时候使用的visualSVN server; visualSVN server从4.x.x.x开始收费;限制15个开发者用户&#xff…...

leetcode 983. 最低票价

在一个火车旅行很受欢迎的国度,你提前一年计划了一些火车旅行。在接下来的一年里,你要旅行的日子将以一个名为 days 的数组给出。每一项是一个从 1 到 365 的整数。 火车票有 三种不同的销售方式 : 一张 为期一天 的通行证售价为 costs[0] …...

七种遍历Map的方法

七种遍历Map的方法 import java.util.HashMap; import java.util.Iterator; import java.util.Map;public class Wan {public static void main(String[] args) {Map<String,String> dataMap new HashMap<>();dataMap.put("A","Abb");dataMap…...

Android性能优化—内存优化

一、App内存组成以及管理 Android 给每个 App 分配一个 VM &#xff0c;让App运行在 dalvik 上&#xff0c;这样即使 App 崩溃也不会影响到系统。系统给 VM 分配了一定的内存大小&#xff0c; App 可以申请使用的内存大小不能超过此硬性逻辑限制&#xff0c;就算物理内存富余&…...

Python自动计算Excel数据指定范围内的区间最大值

本文介绍基于Python语言&#xff0c;基于Excel表格文件内某一列的数据&#xff0c;计算这一列数据在每一个指定数量的行的范围内&#xff08;例如每一个4行的范围内&#xff09;的区间最大值的方法。 已知我们现有一个.csv格式的Excel表格文件&#xff0c;其中有一列数据&#…...

FTP文件传输协议

FTP文件传输协议 介绍 将某台计算机中的文件通过网络传送到可能相距很远的另一台计算机中&#xff0c;是一项基本的网络应用&#xff0c;即文件传送文件传输协议(File Transfer Protocol)是因特网上使用得最广泛的文件传输协议 FTP提供交互式访问&#xff0c;允许客户指明文件…...

运维高级--tomcat和jpress

1. 简述静态网页和动态网页的区别。 静态网页&#xff1a;事先创建好的网页&#xff0c;通常通过HTML、CSS和JavaScript等静态文件组成&#xff0c;不需要和服务器进行交互&#xff0c;加载速度快 动态网页&#xff1a;根据用户需求动态生成网页&#xff0c;动态网页通常使用…...

【LeetCode】141. 环形链表 进阶题142. 环形链表 II

141. 环形链表 这道题还是用经典的快慢指针法来做。每次让快的指针走两步&#xff0c;慢的走一步。如果有环&#xff0c;则绝对会在环内的某一节点相遇。思想跟物理知识有点关系&#xff0c;如果有环&#xff0c;则在相对运动过程中&#xff0c;可以相当于慢指针静止&#xff0…...

MySQL索引1——基本概念与索引结构(B树、R树、Hash等)

目录 索引(INDEX)基本概念 索引结构分类 BTree树索引结构 Hash索引结构 Full-Text索引 R-Tree索引 索引(INDEX)基本概念 什么是索引 索引是帮助MySQL高效获取数据的有序数据结构 为数据库表中的某些列创建索引&#xff0c;就是对数据库表中某些列的值通过不同的数据结…...

TikTok数据分析 | 用好超店有数,生意增长快人一步

TikTok在东南亚崛起之快令人叹服。 在东南亚第一大经济体印度尼西亚&#xff0c;超过200万小商家入驻了TikTok的电商平台&#xff1b; TikTok Shop 以6.9亿美元的收入市场份额超越Lazada成为越南第二大电商平台&#xff1b; 2023年泰国TikTok Shop的销售额一路猛涨&#xff…...

从零开始学Docker(三):DockerFile镜像定制

宿主机环境&#xff1a;RockyLinux 9 前言&#xff0c;定制docker镜像的方式有两种&#xff1a; 手动修改容器内容&#xff0c;然后docker commit提交容器为新的镜像通过在dockerfile中定义一系列的命令和参数构成的脚本&#xff0c;然后这些命令应用于基础镜像&#xff0c;依…...

【Linux】 UDP网络套接字编程

&#x1f34e;作者&#xff1a;阿润菜菜 &#x1f4d6;专栏&#xff1a;Linux系统网络编程 文章目录 一、网络通信的本质&#xff08;port标识的进程间通信&#xff09;二、传输层协议UDP/TCP认识传输层协议UDP/TCP网络字节序问题&#xff08;规定大端&#xff09; 三、socket编…...

《golang设计模式》第一部分·创建型模式-05-工厂方法模式(Factory Method)

文章目录 1 概述2.1 角色2.2 类图 2 代码示例2. 1 设计2.2 代码2.3 类图 3. 简单工厂3.1 角色3.2 类图3.3 代码示例3.3.1 设计3.3.2 代码3.3.3 类图 1 概述 工厂方法类定义产品对象创建接口&#xff0c;但由子类实现具体产品对象的创建。 2.1 角色 Product&#xff08;抽象产…...

Kubernetes 概述

1、K8S 是什么&#xff1f; K8S 的全称为 Kubernetes (K12345678S) 作用 用于自动部署、扩展和管理“容器化&#xff08;containerized&#xff09;应用程序”的开源系统。 可以理解成 K8S 是负责自动化运维管理多个容器化程序&#xff08;比如 Docker&#xff09;的集群&#…...

(LeetCode 每日一题) 3442. 奇偶频次间的最大差值 I (哈希、字符串)

题目&#xff1a;3442. 奇偶频次间的最大差值 I 思路 &#xff1a;哈希&#xff0c;时间复杂度0(n)。 用哈希表来记录每个字符串中字符的分布情况&#xff0c;哈希表这里用数组即可实现。 C版本&#xff1a; class Solution { public:int maxDifference(string s) {int a[26]…...

2025年能源电力系统与流体力学国际会议 (EPSFD 2025)

2025年能源电力系统与流体力学国际会议&#xff08;EPSFD 2025&#xff09;将于本年度在美丽的杭州盛大召开。作为全球能源、电力系统以及流体力学领域的顶级盛会&#xff0c;EPSFD 2025旨在为来自世界各地的科学家、工程师和研究人员提供一个展示最新研究成果、分享实践经验及…...

Psychopy音频的使用

Psychopy音频的使用 本文主要解决以下问题&#xff1a; 指定音频引擎与设备&#xff1b;播放音频文件 本文所使用的环境&#xff1a; Python3.10 numpy2.2.6 psychopy2025.1.1 psychtoolbox3.0.19.14 一、音频配置 Psychopy文档链接为Sound - for audio playback — Psy…...

HashMap中的put方法执行流程(流程图)

1 put操作整体流程 HashMap 的 put 操作是其最核心的功能之一。在 JDK 1.8 及以后版本中&#xff0c;其主要逻辑封装在 putVal 这个内部方法中。整个过程大致如下&#xff1a; 初始判断与哈希计算&#xff1a; 首先&#xff0c;putVal 方法会检查当前的 table&#xff08;也就…...

零知开源——STM32F103RBT6驱动 ICM20948 九轴传感器及 vofa + 上位机可视化教程

STM32F1 本教程使用零知标准板&#xff08;STM32F103RBT6&#xff09;通过I2C驱动ICM20948九轴传感器&#xff0c;实现姿态解算&#xff0c;并通过串口将数据实时发送至VOFA上位机进行3D可视化。代码基于开源库修改优化&#xff0c;适合嵌入式及物联网开发者。在基础驱动上新增…...

git: early EOF

macOS报错&#xff1a; Initialized empty Git repository in /usr/local/Homebrew/Library/Taps/homebrew/homebrew-core/.git/ remote: Enumerating objects: 2691797, done. remote: Counting objects: 100% (1760/1760), done. remote: Compressing objects: 100% (636/636…...

Python训练营-Day26-函数专题1:函数定义与参数

题目1&#xff1a;计算圆的面积 任务&#xff1a; 编写一个名为 calculate_circle_area 的函数&#xff0c;该函数接收圆的半径 radius 作为参数&#xff0c;并返回圆的面积。圆的面积 π * radius (可以使用 math.pi 作为 π 的值)要求&#xff1a;函数接收一个位置参数 radi…...

Spring Boot + MyBatis 集成支付宝支付流程

Spring Boot MyBatis 集成支付宝支付流程 核心流程 商户系统生成订单调用支付宝创建预支付订单用户跳转支付宝完成支付支付宝异步通知支付结果商户处理支付结果更新订单状态支付宝同步跳转回商户页面 代码实现示例&#xff08;电脑网站支付&#xff09; 1. 添加依赖 <!…...

【版本控制】GitHub Desktop 入门教程与开源协作全流程解析

目录 0 引言1 GitHub Desktop 入门教程1.1 安装与基础配置1.2 核心功能使用指南仓库管理日常开发流程分支管理 2 GitHub 开源协作流程详解2.1 Fork & Pull Request 模型2.2 完整协作流程步骤步骤 1: Fork&#xff08;创建个人副本&#xff09;步骤 2: Clone&#xff08;克隆…...

C/Python/Go示例 | Socket Programing与RPC

Socket Programming介绍 Computer networking这个领域围绕着两台电脑或者同一台电脑内的不同进程之间的数据传输和信息交流&#xff0c;会涉及到许多有意思的话题&#xff0c;诸如怎么确保对方能收到信息&#xff0c;怎么应对数据丢失、被污染或者顺序混乱&#xff0c;怎么提高…...