2021Java春招,java开发报表工具
开头
被面试人是我的一位粉丝近期刚刚结束了蚂蚁金服的三轮技术面试,面完之后他跟我说很累,直言不想再体验了。
他的面试经历我仔细看了看,一面重点在基础知识的考查,二面重点在项目以及对框架的使用与理解上,三面压力面,是很熟悉的套路,考察的知识点也是经常问到的,具有一定的参考价值,接下来我们就来看看他的这几轮面试经历吧。
面试题模块介绍:
一、Java 基础
- JDK 和 JRE 有什么区别?
- == 和 equals 的区别是什么?
- 两个对象的 hashCode()相同,则 equals()也一定为 true,对吗?
- final 在 java 中有什么作用?
- java 中的 Math.round(-1.5) 等于多少?
- String 属于基础的数据类型吗?
- java 中操作字符串都有哪些类?它们之间有什么区别?
- String str="i"与 String str=new String(“i”)一样吗?
- 如何将字符串反转?
- String 类的常用方法都有那些?
- 抽象类必须要有抽象方法吗?
- 普通类和抽象类有哪些区别?
- 抽象类能使用 final 修饰吗?
- 接口和抽象类有什么区别?
- java 中 IO 流分为几种?
- BIO、NIO、AIO 有什么区别?
- Files的常用方法都有哪些?
二、容器
- java 容器都有哪些?
- Collection 和 Collections 有什么区别?
- List、Set、Map 之间的区别是什么?
- HashMap 和 Hashtable 有什么区别?
- 如何决定使用 HashMap 还是 TreeMap?
- 说一下 HashMap 的实现原理?
- 说一下 HashSet 的实现原理?
- ArrayList 和 LinkedList 的区别是什么?
- 如何实现数组和 List 之间的转换?
- ArrayList 和 Vector 的区别是什么?
- Array 和 ArrayList 有何区别?
- 在 Queue 中 poll()和 remove()有什么区别?
- 哪些集合类是线程安全的?
- 迭代器 Iterator 是什么?
- Iterator 怎么使用?有什么特点?
- Iterator 和 ListIterator 有什么区别?
- 怎么确保一个集合不能被修改?
三、多线程
- 并行和并发有什么区别?
- 线程和进程的区别?
- 守护线程是什么?
- 创建线程有哪几种方式?
- 说一下 runnable 和 callable 有什么区别?
- 线程有哪些状态?
- sleep() 和 wait() 有什么区别?
- notify()和 notifyAll()有什么区别?
- 线程的 run()和 start()有什么区别?
- 创建线程池有哪几种方式?
- 线程池都有哪些状态?
- 线程池中 submit()和 execute()方法有什么区别?
- 在 java 程序中怎么保证多线程的运行安全?
- 多线程锁的升级原理是什么?
- 什么是死锁?
- 怎么防止死锁?
- ThreadLocal 是什么?有哪些使用场景?
- 说一下 synchronized 底层实现原理?
- synchronized 和 volatile 的区别是什么?
- synchronized 和 Lock 有什么区别?
- synchronized 和 ReentrantLock 区别是什么?
- 说一下 atomic 的原理?
四、反射
- 什么是反射?
- 什么是 java 序列化?什么情况下需要序列化?
- 动态代理是什么?有哪些应用?
- 怎么实现动态代理?
五、对象拷贝
- 为什么要使用克隆?
- 如何实现对象克隆?
- 深拷贝和浅拷贝区别是什么?
六、Java Web
- jsp 和 servlet 有什么区别?
- jsp 有哪些内置对象?作用分别是什么?
- 说一下 jsp 的 4 种作用域?
- session 和 cookie 有什么区别?
- 说一下 session 的工作原理?
- 如果客户端禁止 cookie 能实现 session 还能用吗?
- spring mvc 和 struts 的区别是什么?
- 如何避免 sql 注入?
- 什么是 XSS 攻击,如何避免?
- 什么是 CSRF 攻击,如何避免?
七、异常
- hrow 和 throws 的区别?
- final、finally、finalize 有什么区别?
- try-catch-finally 中哪个部分可以省略?
- try-catch-finally 中,如果 catch 中 return 了,finally 还会执行吗?
- 常见的异常类有哪些?
八、网络
- http 响应码 301 和 302 代表的是什么?有什么区别?
- forward 和 redirect 的区别?
- 简述 tcp 和 udp的区别?
- tcp 为什么要三次握手,两次不行吗?为什么?
- 说一下 tcp 粘包是怎么产生的?
- OSI 的七层模型都有哪些?
- get 和 post 请求有哪些区别?
- 如何实现跨域?
- 说一下 JSONP 实现原理?
九、设计模式
- 说一下你熟悉的设计模式?
- 简单工厂和抽象工厂有什么区别?
十、Spring/Spring MVC
- 什么是spring?
- Spring的俩大核心概念
- Spring框架的设计目标,设计理念,和核心是什么
- Spring由哪些模块组成?
- Spring 框架中都用到了哪些设计模式?
- 使用 Spring 有哪些方式?
- spring 支持几种 bean 的作用域?
- spring 自动装配 bean 有哪些方式?
- spring 事务实现方式有哪些?
- 什么是Spring MVC?简单介绍下你对Spring MVC的理解?
- Spring MVC的主要组件?
- 什么是Spring MVC框架的控制器?
- MVC是什么?MVC设计模式的好处有哪些
- Spring MVC常用的注解有哪些?
- Spring MVC与Struts2区别
- Spring MVC怎么样设定重定向和转发的?
- Spring MVC的异常处理?
- 什么是Spring MVC框架的控制器?
- 说一下 spring mvc 运行流程?
- spring mvc 有哪些组件?
- @RequestMapping 的作用是什么
- @Autowired 的作用是什么?
十一、Spring Boot/Spring Cloud
- 什么是 spring boot?
- 为什么要用 spring boot?
- spring boot 核心配置文件是什么?
- spring boot 配置文件有哪几种类型?它们有什么区别?
- spring boot 有哪些方式可以实现热部署?
- jpa 和 hibernate 有什么区别?
- 什么是 spring cloud?
- spring cloud 断路器的作用是什么?
- spring cloud 的核心组件有哪些?
十二、Hibernate
- 为什么要使用 hibernate?
- 什么是 ORM 框架?
- hibernate 中如何在控制台查看打印的 sql 语句?
- hibernate 有几种查询方式?
- hibernate 实体类可以被定义为 final 吗?
- 在 hibernate 中使用 Integer 和 int 做映射有什么区别?
- hibernate 是如何工作的?
- get()和 load()的区别?
- 说一下 hibernate 的缓存机制?
- hibernate 对象有哪些状态?
- 在 hibernate 中 getCurrentSession 和 openSession 的区别是什么?
- hibernate 实体类必须要有无参构造函数吗?为什么?
十三、Mybatis
- MyBatis是什么?
- Mybatis优缺点
- Hibernate 和 MyBatis 的区别
- 为什么说Mybatis是半自动ORM映射工具?它与全自动的区别在哪里?
- 传统JDBC开发存在什么问题?
- JDBC编程有哪些不足之处,MyBatis是如何解决的?
- MyBatis和Hibernate的适用场景?
- MyBatis编程步骤是什么样的?
- 请说说MyBatis的工作原理
- MyBatis的功能架构是怎样的
- MyBatis的框架架构设计是怎么样的
- 什么是DBMS
- Mybatis都有哪些Executor执行器?它们之间的区别是什么?
- Mybatis中如何指定使用哪一种Executor执行器?
- Mybatis是否支持延迟加载?如果支持,它的实现原理是什么?
- Mybatis如何执行批量操作
- 当实体类中的属性名和表中的字段名不一样 ,怎么办
- Mapper 编写有哪几种方式?
- 什么是MyBatis的接口绑定?有哪些实现方式?
- 使用MyBatis的mapper接口调用时有哪些要求?
- Mybatis是如何将sql执行结果封装为目标对象并返回的?都有哪些映射形式?
- 简述Mybatis的Xml映射文件和Mybatis内部数据结构之间的映射关系?
- Xml映射文件中,除了常见的select|insert|updae|delete标签之外,还有哪些标签?
- Mybatis是否可以映射Enum枚举类?
- 简述Mybatis的插件运行原理,以及如何编写一个插件。
- Mybatis的一级、二级缓存
十四、RabbitMQ
- 什么是MQ
- MQ的优点
- 解耦、异步、削峰是什么?。
- 消息队列有什么缺点
- 你们公司生产环境用的是什么消息中间件?
- Kafka、ActiveMQ、RabbitMQ、RocketMQ 有什么优缺点?
- MQ 有哪些常见问题?如何解决这些问题?
- 什么是RabbitMQ?
- rabbitmq 的使用场景
- RabbitMQ的工作模式
- 如何保证RabbitMQ消息的顺序性?
- 消息如何分发?
- 消息基于什么传输?
- 如何保证消息不被重复消费?或者说,如何保证消息消费时的幂等性?
- 如何确保消息正确地发送至 RabbitMQ? 如何确保消息接收方消费了消息?
- 如何保证RabbitMQ消息的可靠传输?
- 为什么不应该对所有的 message 都使用持久化机制?
- 如何保证高可用的?RabbitMQ 的集群
- 如何解决消息队列的延时以及过期失效问题?消息队列满了以后该怎么处理?有几百万消息持续积压几小时,怎么办?
- 设计MQ思路?
十五、Kafka
- kafka 可以脱离 zookeeper 单独使用吗?为什么?
- kafka 有几种数据保留的策略?
- kafka 同时设置了 7 天和 10G 清除数据,到第五天的时候消息达到了 10G,这个时候 kafka 将如何处理?
- 什么情况会导致 kafka 运行变慢?
- 使用 kafka 集群需要注意什么?
十六、Zookeeper
- zookeeper 是什么?
- ZooKeeper 提供了什么?
- Zookeeper 怎么保证主从节点的状态同步?
- zookeeper 是如何保证事务的顺序一致性的?
- Zookeeper Watcher 机制 – 数据变更通知
- 集群中为什么要有主节点?
- 集群中有 3 台服务器,其中一个节点宕机,这个时候 zookeeper 还可以使用吗?
- 说一下 zookeeper 的通知机制?
- Watcher 特性总结
- 客户端注册 Watcher 实现
- 服务端处理 Watcher 实现
- Zookeeper 下 Server 工作状态
- zookeeper 是如何保证事务的顺序一致性的?
- 分布式集群中为什么会有 Master主节点?
- zookeeper 负载均衡和 nginx 负载均衡区别
- Zookeeper 有哪几种几种部署模式?
- 集群支持动态添加机器吗?
- Zookeeper 对节点的 watch 监听通知是永久的吗?为什么不是永久的?
- Zookeeper 的 java 客户端都有哪些?
- chubby 是什么,和 zookeeper 比你怎么看?
- Zookeeper 都有哪些功能?
- 说一下 Zookeeper 的通知机制?
- Zookeeper 和 Dubbo 的关系?
十七、MySql
- 为什么要使用数据库?
- 什么是MySQL?
- MySql, Oracle,Sql Service的区别
- mysql有关权限的表都有哪几个
- MySQL的binlog有有几种录入格式?分别有什么区别?
- 数据库经常使用的函数?
- mysql有哪些数据类型?
- MySQL存储引擎MyISAM与InnoDB区别
- MyISAM索引与InnoDB索引的区别?
- 什么是索引?索引有哪些优缺点?
- 怎么创建索引的,有什么好处,有哪些分类
- 索引有哪几种类型?
- 索引的数据结构(b树,hash)
- 索引算法有哪些?
- 创建索引的三种方式
- 百万级别或以上的数据如何删除
- B树和B+树的区别
- 事物的四大特性(ACID)介绍一下?
- 什么是事务的隔离级别?MySQL的默认隔离级别是什么?
- 从锁的类别上分MySQL都有哪些锁呢?
- MySQL中InnoDB引擎的行锁是怎么实现的?
- 什么是存储过程?有哪些优缺点?
- 什么是触发器?触发器的使用场景有哪些?
- SQL语句主要分为哪几类
- 怎么优化SQL查询语句吗
- 如何定位及优化SQL语句的性能问题?创建的索引有没有被使用到?或者说怎么才可以知道这条语句运行很慢的原因?
- SQL的生命周期?
- MySQL数据库cpu飙升到500%的话他怎么处理?
- 备份计划,mysqldump以及xtranbackup的实现原理
十八、Redis
- 什么是Redis?
- Redis有哪些优缺点?
- 使用redis有哪些好处?
- 为什么要用 Redis / 为什么要用缓存
- 为什么要用 Redis 而不用 map/guava 做缓存?
- Redis为什么这么快
- Redis有哪些数据类型
- Redis的应用场景
- Redis 的持久化机制是什么?各自的优缺点?
- 如何选择合适的持久化方式
- Redis持久化数据和缓存怎么做扩容?
- Redis的过期键的删除策略
- Redis key的过期时间和永久有效分别怎么设置?
- 我们知道通过expire来设置key 的过期时间,那么对过期的数据怎么处理呢?
- MySQL里有2000w数据,redis中只存20w的数据,如何保证redis中的数据都是热点数据
- Redis主要消耗什么物理资源?
- Redis的内存用完了会发生什么?
- Redis如何做内存优化?
- Redis事务的概念
- Redis事务支持隔离性吗
- redis 集群模式的工作原理能说一下么?
- 在集群模式下,redis 的 key 是如何寻址的?
- 分布式寻址都有哪些算法?
- 了解一致性 hash 算法吗?
- Redis集群的主从复制模型是怎样的?
- 生产环境中的 redis 是怎么部署的?
- Redis集群会有写操作丢失吗?为什么?
- Redis是单线程的,如何提高多核CPU的利用率?
- 你知道有哪些Redis分区实现方案?
- 如何解决 Redis 的并发竞争 Key 问题
- 分布式Redis是前期做还是后期规模上来了再做好?为什么?
- Redis和Redisson有什么关系?
十九、JVM
我们开发人员编写的Java代码是怎么让电脑认识的
Jdk和Jre和JVM的区别
说一下 JVM由那些部分组成,运行流程是什么?
说一下 JVM 运行时数据区
详细的介绍下程序计数器?(重点理解)
详细介绍下Java虚拟机栈?(重点理解
你能给我详细的介绍Java堆吗?(重点理解)
能不能解释一下本地方法栈?
能不能解释一下方法区(重点理解)
什么是JVM字节码执行引擎
你听过直接内存吗?
知道垃圾收集系统吗?
堆栈的区别是什么?
深拷贝和浅拷贝
Java会存在内存泄漏吗?请说明为什么?
JVM 中都有哪些引用类型?
怎么判断对象是否可以被回收?
对象什么时候可以被垃圾器回收
JVM 垃圾回收算法有哪些?
JVM中的永久代中会发生垃圾回收吗
说一下 JVM 有哪些垃圾回收器?
说一下 JVM 调优的工具?
俗话说,好学者临池学书,不过网络时代,对于大多数的我们来说,我倒是觉得学习意识的觉醒很重要,这是开始学习的转折点,比如看到对自己方向发展有用的信息,先收藏一波是一波,比如如果你觉得我这篇文章ok,先点赞收藏一波。这样,等真的沉下心来学习,不至于被找资料分散了心神。慢慢来,先从点赞收藏做起,加油吧!
最后
如何获取免费架构学习资料?
资料获取方式:点击下方蓝色传送门
Java学习、面试;文档、视频资源免费获取
最后
如何获取免费架构学习资料?
资料获取方式:点击下方蓝色传送门
Java学习、面试;文档、视频资源免费获取
[外链图片转存中…(img-xYF6ttG3-1623994641742)]
[外链图片转存中…(img-Bf8n58DH-1623994641743)]
[外链图片转存中…(img-fXaXpeMr-1623994641745)]
[外链图片转存中…(img-mkIF9NLW-1623994641747)]
[外链图片转存中…(img-DSiglmsc-1623994641749)]
[外链图片转存中…(img-EmU5zfYe-1623994641749)]
2021Java春招,java开发报表工具相关推荐
- 京东2019春招Java开发类笔试题
京东2019春招Java开发类笔试题 1. (单选题) 在对问题的解空间树进行搜索的方法中,一个结点有多次机会成为活结点的是 ( B ) A. 动态规划 B. 回溯法 C. 分支限界法 D. 回溯法和 ...
- 中国平安——2020春招Java开发岗部分AI面试题
以下是今年春招中国平安的AI面试题,不过具体我已经有些忘了,都是回忆起来的,然后搜集了部分答案,可能不太准确,所以可能具体的还需要去深入了解下.一直在CSDN上获取着各种帮助,希望能够对他人有点帮助叭 ...
- 【真题分享】2021京东春招java开发面试
1.问项目 2.HashMap底层实现,扩容阈值,具体怎么扩容,扩容优化,抖动函数,集合大小为什么是2的幂,为什么阈值是8(源码里是8-1),jkd1.7,1.8具体优化的地方. 3.线程安全集合,C ...
- javaweb在线问卷系统_2020 最新流行的Java Web报表工具比对
随着信息系统的高速发展,报表平台逐渐成为了信息系统当中最为核心和重要的功能模块. 报表工具有助于将原始数据可视化显示,使决策者或者相关人员能够一览整体的数据趋势,完整的报表解决方案会提供多样的表格数据 ...
- java 报表_2020 最新流行的Java Web报表工具比对
随着信息系统的高速发展,报表平台逐渐成为了信息系统当中最为核心和重要的功能模块. 报表工具有助于将原始数据可视化显示,使决策者或者相关人员能够一览整体的数据趋势,完整的报表解决方案会提供多样的表格数据 ...
- java web 图表控件_2020 最新流行的Java Web报表工具比对
原标题:2020 最新流行的Java Web报表工具比对 随着信息系统的高速发展,报表平台逐渐成为了信息系统当中最为核心和重要的功能模块. 报表工具有助于将原始数据可视化显示,使决策者或者相关人员能够 ...
- 为什么阿里巴巴最爱招Java开发程序员?
为什么阿里巴巴最爱招Java开发程序员?因为java本身设计特性就是大规模工程语言. 它有三个根本性的特征 1.适应各种业务,你目前知道的几乎所有的业务都可以用java写.有很多语言做不到这一点. 2 ...
- 透过现象看本质,究竟为什么阿里巴巴爱招Java开发程序员?
为什么阿里巴巴最爱招Java开发程序员? 因为java本身设计特性就是大规模工程语言.它有三个根本性的特征 1.适应各种业务,你目前知道的几乎所有的业务都可以用java写.有很多语言做不到这一点. 2 ...
- java 开发人员工具_每个Java开发人员都应该知道的10个基本工具
java 开发人员工具 大家好,我们已经到了2019年的第二个月,我相信你们所有人都已经制定了关于2019年学习以及如何实现这些目标的目标. 我一直在撰写一系列文章,为您提供一些知识,使您可以学习和改 ...
最新文章
- Linux安装solr
- git 内网搭建_搭建GitLab(Github) 简易教程
- 21上海省赛 F-鸡哥的限币令
- GCC编译选项 -OX[转]
- 关于printf输出 格式化规定符 的
- USE PDFCREATE TO CREATE A PDF FILE
- java valueof_Java Short类valueOf()方法及示例
- memcached 如果进程占用cpu很高
- maven 连接sqlserver
- 【Antlr】cannot create implicit token for string literal in non-combined grammar xx
- 2021年中国中级订单选择器(3至8+m)市场趋势报告、技术动态创新及2027年市场预测
- 这家公司的 IoT ,你可千万别低估!
- 【转帖】lcd1602中文资料
- 中国鲆鱼养殖产业呈现集聚趋势,主要集中于山东、辽宁两地「图」
- STC15单片机-PCB设计
- 五大主流浏览器和内核
- AngularJS PrimeNG 上传文件 进度条
- 国内常用的代理ip形式动态住宅ip和移动手机代理ip有什么区别?
- Gram矩阵+Gram矩阵和协方差矩阵的关系
- 使用scoop下载Annie时提示couldnt find manifest for annie
热门文章
- 专科计算机专业学费多少,计算机及应用的自考学费是多少
- 2019世界智能家居展览会-专业智能家居博览会
- 开封文化旅游学校计算机专业,开封市文化旅游学校
- 佳能Canon PIXMA MX478 打印机驱动
- java毕业设计云端存储的待办清单的设计Mybatis+系统+数据库+调试部署
- python与excel教程_办公自动化系列(2) | Python与Excel交互教程 - 交互演示
- Centos7下实现免密登录
- 安装数据库MySQL 8.0.20.0 详细过程 小白安装
- 数据库入门——手把手教你安装数据库
- 数据挖掘十大经典算法之apriori算法源代码