面试
不了痕
风景很美,常回头看看
展开
-
【JAVA面试题整理】框架之Mybatis
一、Mybatis中#和$的区别#相当于对数据加上双引号,$相当于直接显示数据 #将传入的数据都当成一个字符串,会对自动传入的数据加一个双引号。如orderby #user_id#,如果传入的值是111,那么解析成sql时的值为orderby "111",如果传入的值是id,则解析成的sql为orderby "id"。 $将传入的数据直接显示生成在sql中。如:order...原创 2020-03-16 17:43:07 · 352 阅读 · 0 评论 -
【JAVA面试题整理】框架之Shiro
一、简单介绍一下Shiro框架ApacheShiro是java的一个安全框架。使用shiro可以非常容易的开发出足够好的应用,其不仅可以用在JavaSE环境,也可以用在JavaEE环境。Shiro可以帮助我们完成:认证、授权、加密、会话管理、与Web集成、缓存等。三个核心组件:Subject、SecurityManager、RealmsSubject:即“当前操作用户”。但是,在Sh...原创 2020-03-16 08:14:20 · 2189 阅读 · 0 评论 -
【JAVA面试题整理】框架之SpringMVC
一、Spring MVC的工作原理 用户向服务器发送请求,请求被springMVC前端控制器DispatchServlet捕获 DispatcherServlet队请求URL进行解析,得到请求资源标识符(URL),然后根据URL调用HandlerMapping将请求映射到处理器HandlerExcutionChain DispatcherServlet根据获取到Handl...原创 2020-03-16 08:13:22 · 337 阅读 · 0 评论 -
【JAVA面试题整理】框架之Spring详解
一、谈谈你对Spring的理解Spring是一个开源框架,为简化企业级应用开发而生。Spring可以使简单的JavaBean实现以前只有EJB才能实现的功能。Spring是一个IOC和AOP容器框架。Spring容器的主要核心是:控制反转(IOC):传统的java开发模式中,当需要一个对象时,我们会自己使用new或者getInstance等直接或间接调用构造方法创建一个对象。而在spr...原创 2020-03-15 09:25:41 · 1299 阅读 · 0 评论 -
【JAVA面试题整理】数据库之Oracle
1、什么是存储过程,使用存储过程的好处?存储过程(Stored Procedure )是一组为了完成特定功能的SQL 语句集,经编译后存储在数据库中。用户通过指定存储过程的名字并给出参数(如果该存储过程带有参数)来执行它。存储过程是数据库中的一个重要对象,任何一个设计良好的数据库应用程序都应该用到存储过程。优点:(1)允许模块化程序设计,就是说只需要创建一次过程,以后在程序中就可以调用...原创 2020-03-14 16:45:31 · 619 阅读 · 0 评论 -
【JAVA面试题整理】数据库之Mysql
一、SQL的select语句完整的执行顺序 form子句组装来自不同数据源的数据 where子句基于指定的条件对记录进行筛选 groupby子句将数据划分为多个分组 使用聚集函数进行计算 使用having子句筛选分组 计算所有的表达式 select的字段 使用orderby对结果集进行排序 SQL语言不同于其他编程...原创 2020-03-14 16:41:58 · 1319 阅读 · 0 评论 -
【JAVA面试题整理】JavaWeb
JDBC技术一、说下原生jdbc操作数据库流程 Class.forName()加载数据库连接驱动 DriverManager.getConnection()获取数据连接对象 根据SQL获取sql会话对象,有两种方式:Statement、PreparedStatement 执行SQL处理结果集,执行SQL前如果有参数值就设置参数值setXXX() 关...原创 2020-03-12 14:19:35 · 462 阅读 · 0 评论 -
【JAVA面试题整理】JAVA高级(二)
JAVA的类加载器一、java的类加载器有哪几种?1、根类加载器(Bootstrap)2、扩展类加载器(Extension):加载位置jre\lib\ext中3、系统(应用)类加载器(System\App):加载位置:classpath中4、自定义类加载器(必须继承ClassLoader)二、类什么时候被初始化? 创建类的实例,也就是new一个对象 访问某个...原创 2020-03-11 01:24:30 · 345 阅读 · 0 评论 -
【JAVA面试题整理】JAVA高级(一)
JAVA中的反射一、说说你对反射的理解反射是要能获取到java类中的字节码,获取字节码的方法有3种: Class.forName(ClassName); 类名.class; this.getClass(); 然后将字节码中的变量、方法、构造函数映射成相应的Field、Method、Construct等,供我们进行丰富的操作。JAVA中的动态代理1、动静...原创 2020-03-10 08:04:37 · 1133 阅读 · 0 评论 -
【JAVA面试题整理】JAVA基础(五)
多线程面试题一、多线程的创建方式 继承Thread类; 实现Runnable接口; 使用ExecutorService、Callable、Future实现带有返回结果的多线程; 二、java中wait和sleep方法的不同? 最大的不同是wait在等待时会释放锁,sleep一致持有锁。 wait通常被用于线程间的交互,sleep通常被用于暂停执行。...原创 2020-03-08 15:10:17 · 327 阅读 · 0 评论 -
【JAVA面试题整理】JAVA基础(四)
JAVA的多线程和并发库一、线程创建的方式1、在Thread子类覆盖run方法中实现运行代码2、在传递给Thread对象的runnable对象的run方法中实现运行代码总结:无论以哪种方式运行,都是最终要实现Runnable接口的run方法。public interface Runnable { /** * When an object impleme...原创 2020-03-08 11:32:24 · 417 阅读 · 0 评论 -
TCP 为什么三次握手而不是两次握手(正解版)
参考文章Why do we need a 3-way handshake? Why not just 2-way大部分网络博客的错误解读首先需要声明的是, 百度搜索到的大部分网络博客关于这个问题的解答都是不清晰或者不准确的。 讨论这个问题的大部分博客都会引用《计算机网络》的内容:防止已失效的连接请求又传送到服务器端,因而产生错误不幸的是, 这种解释是不准确的, TCP 采用三次...转载 2020-03-07 23:40:35 · 1184 阅读 · 0 评论 -
【JAVA面试题整理】JAVA基础(三)
JAVA的集合类一、HashMap排序,上机题已知一个HashMap<Integer,User>集合,User有name(String)和age(int)属性。请写一个方法实现对HashMap的排序功能,该方法接收HashMap<Integer,User>为形参,返回类型为HashMap<Integer,User>,要求对HashMap中User的age...原创 2020-03-06 12:43:27 · 459 阅读 · 0 评论 -
【JAVA面试题整理】JAVA基础(二)
JAVA常见的API一、Math.Round(11.4)和Math.Round(-11.4)的结果分别是多少?输出结果分别为11和-11,round(四舍五入的原理是对原数字加上0.5之后再取整);二、switch能否作用在byte、long、String类型上?java5之前,switch后面跟的参数只能是byte、short、char、int,但是从java5开始,引入了e...原创 2020-03-05 17:11:34 · 305 阅读 · 0 评论 -
【JAVA面试题整理】JAVA基础(一)
面向对象一、面向对象都有哪些特性以及对这些特性的理解1、继承继承就是从已有的类中得到已有信息创建新类的过程,这个过程中,已有的类就是父类(超类、基类),新创建的类就是子类(派生类);继承让新的类有了一定的延续性2、封装封装通常意义理解为把数据和操作数据的方法分开实现,将所有的数据项进行封装,最终表现为对数据进行隐藏,对方法进行暴露,只向外部提供最简单的实现接口3、多态多...原创 2020-03-05 10:58:38 · 1444 阅读 · 0 评论 -
看完这篇HTTP,跟面试官扯皮就没问题了
转自https://blog.csdn.net/qq_36894974/article/details/103930478认识 HTTP首先你听的最多的应该就是 HTTP 是一种 超文本传输协议(Hypertext Transfer Protocol),这你一定能说出来,但是这样还不够,假如你是大厂面试官,这不可能是他想要的最终结果,我们在面试的时候往往把自己知道的尽可能多的说出来,才有和...转载 2020-03-03 18:08:37 · 714 阅读 · 0 评论 -
为什么重写equals()就一定要重写hashCode()方法?
以下为本文目录:首先我们分别解释equals()方法和hashCode()方法分别是用来做什么的?我们再来看equals()方法和hashCode()方法两者有什么关系?最后来看为什么重写equals()就一定要重写hashCode()方法?1、首先我们分别解释equals()方法和hashCode()方法分别是用来做什么的?equals()方法:很明显,该方法就是用来判断两个...转载 2020-03-04 13:03:32 · 915 阅读 · 1 评论 -
Kafka常被提到的知识点
如何保证消息队列的高可用?(1) ActiveMQ和RabbitMQ单击吞吐量是万级, Kafka和RocketMQ的单机吞吐量是10万级.(2) 四种MQ的时效性, 可用性, 消息可靠性都很高.(3) ActiveMQ的社区不太活跃, 其他三种MQ的社区比较活跃.(4) RabbitMQ是基于Erlang语言开发, 对Java开发者不太友好.(5...原创 2020-03-02 10:33:19 · 294 阅读 · 0 评论 -
为什么 30 岁的工程师容易跳槽?
作者|周明耀编辑|小智为什么在中国,年龄总会成为程序员们绕不过去的尖锐话题?你觉得孤独就对了,那是让你认识自己的机会。你觉得不被理解就对了,那是让你认清朋友的机会。你觉得黑暗就对了,那样你才分辨得出什么是你的光芒。你觉得无助就对了,那样你才能明白谁是你的贵人。你觉得迷茫就对了,谁的青春不迷茫。——《谁的青春不迷茫》前段时间有位读者联系我,提出了他的问题:“为什么我想跳槽,...转载 2020-02-28 23:44:51 · 1127 阅读 · 0 评论 -
【记一次面试现场编程的经历】在10G的文件中,获取top100的值
年终跳槽热季,因为个人原因,也准备换一个工作环境。就在前几天晚上,参加了某厂的一次视频面试。还是这种大厂的面试参加的少,各种技术细节和深度都在被针对,面试完之后,深感学艺不精,顿时下定决心,在新的一年深挖技术栈。虽然面试很痛心,但是最后的现场编程环节还是比较值得回味的。题目发下来之后感觉很熟悉,但也是它认识我,我不认识它那种。题目大体这样的:给定一个10G的CSV文件,其中记录学生的成绩...原创 2020-01-04 22:47:32 · 2002 阅读 · 0 评论