失效链接处理 |
一线大厂面试题 PDF 下载 下载地址:
提取码:fmbr
相关截图: 主要内容:
1、请描述抽象类和接口的区别?
2、请描述转发(forward)和重定向(redirect)的区别?
从地址栏显示来说:
Forward 是服务器请求资源,服务器直接访问目标地址的URL,把那个URL的响应内容读取过来,然后把这些内容再发给浏览器。浏览器根本不知道服务器发送的内容从哪里来,所以它的地址栏还是原来的地址栏
Redirect 是服务端根据逻辑,发送一个状态码,告诉浏览器重新去请求那个地址,所以地址栏显示的是新的URL
从数据共享来说:
Forward转发页面和转发到的页面可以共享request里面的数据
Redirect不能共享数据
从效率来说:
Forward:高
Redirect:低
3、多线程有几种实现方式,都有什么?同步有几种实现方法,都有什么?
4、请描述数据库连接池的工作机制是什么?
J2EE服务器启动时会建立一定数量的池连接,并一直维持不少于此数目的池连接。客户端程序需要连接时,池驱动程序会返回一个未使用的池连接并将其表记为忙。如果当前没有空闲连接,池驱动程序就新建一定数量的连接,新建连接的数量有配置参数决定。当使用的池连接调用完成后,池驱动程序将此连接表记为空闲,其他调用就可以使用这个连接。
5、请概述java垃圾回收机制?
https://blog.csdn.net/weixin_39067991/article/details/81045201
6、请概述ArrayList,Vector,LinkedList的存储性能和特性?
ArrayList 和Vecter底层是数组实现的,这种方式将对象放在连续的位置,所以查询效率较高,新增和删除元素效率低。
LinkedList底层采用的是双链表实现的,每个节点(除了首尾节点)都存有前一个和后一个节点的引用和数据区,所以插入和删除比较快,查询数据比较慢。
Vecter 使用Synchronize方法(线程安全),所以在性能上比ArrayList要差些
arraylist和vector的区别?
1).同步性:Vector是线程安全的,也就是说是同步的,而ArrayList是线程不安全的,不是同步的
2).数据增长:当需要增长时,Vector默认增长为原来一培,而ArrayList却是原来的一半
7、请描述WebService 的定义,以及优势和缺点。
8、请概述MVC 体系结构?
MVC 是三个单词的缩写,分别为:模型(Model),视图(View),控制器(Controller)
Model层实现系统中的业务逻辑,通常可以用javaBean或者EJB实现。
View 层用于用户的交互,通常用jsp实现。
Controller层是Model和View 之间沟通的桥梁,它可以分派用户的请求并选择恰当的视图以用于显示,同时它也可以解释用户的输入并将它们映射为模型层可执行的操作
9、请概述struts,以及struts如何实现MVC 架构的?
10、Nginx 的四层负载和七层负载的区别?
所谓四层就是基于IP+端口的负载均衡,通过虚拟IP+端口接收请求,然后再分配到真实的服务器;
七层通过虚拟的URL或主机名接收请求,然后再分配到真实的服务器七层就是基于URL等应用层信息的负载均衡。
二. 数据库问答题
1. 描述一下存储过程的作用。
3. 请描述如何优化查询的sql语句。
4. 说一下数据库表设计遵守的三个范式是什么? 除了这些你觉得数据库表的设计还需要注意哪些规则?
5、编写出一下oracle、sqlserver、Mysql、DB2数据的分页查询sql语句。
三、编程题
1、 编写斐波那契数列:1、1、2、3、5、8、13、21、34。。。。。求出第10个项的数值(不能使用递归算法)
2、编写两个线程、一个线程打印 1-25,另一个线程打印字母 A-Z .打印顺序为
12A34B56C….5152z
-------------------------------------------------------------------------------------------------------今天去了一家一线互联网大厂面试。
第一个问题:
1,字节码认识吗,介绍一下。
2,gc中的复制算法,请解释一下原理和实现。
3,ThredPool 异常处理机制。
4,dubbo 中provider和注册中心如何注册,瞬连会不会有影响,有或者没有都解释一下原理。
5,mysql中支持事务的引擎是哪些,如何实现的事务(非特性解释)。
6,mysql主从架构实现和原理。
7,如何实现分布式限流,
8,分布式如何实现具有 时间+序列特性的唯一键。
9,tomcat的加载机制,
10,IOC的原理,以及IOC如何实现多例模式
|