• java面试


    基础:30分
    1. 常用设计模式?动态代理和静态代理的区别和实现原理,常用数据结构
    2. 工作中是否遇到多线程问题,如何解决的?
    3. 你使用过的spring功能有哪些?spring产品体系了解哪些?
    5. 如何理解跨域?跨域传输的实现注意事项?
     
    高级:60分
    1. 用过的开源框架,都解决什么问题?缓存、MQ、搜索引擎、分布式服务、nosql、大数据并行计算
    2. 实现远程接口通讯的技术有哪些?
    3. 搭建高可用、易扩展的服务。部署架构、代码框架、业务细节?
    6. 如何实现灰度发布、平滑升级
     
     
     
    1.    多线程有几种实现方法,都是什么?同步的方法有几种,都是什么?
    <wiz_code_mirror>
     
     
     
     
     
    1
    解答:多线程有两种实现方法:继承Thread类或者实现Runnable接口。
    2
    实现同步也有两种方法:一种是同步方法,另一种是同步代码块。
    3
    同步方法是在方法返回类型前面加上synchronized关键字
    4
    同步代码块是synchronized (这里写需要同步的对象){?}
     
     
    2、集群的方案?web集群环境中的会话保持问题?分布式的方案?分布式服务的接口授权问题?
    3、本地事务?分布式事务?
     
     
     
    1.jvm相关
    参考:http://www.cnblogs.com/smyhvae/p/4810168.html
    方向:
    1.jvm的内存分区
    2.垃圾回收的算法
    3.jvm调优
    问题:1.jvm的内存分配 每个分区具体存储哪些东西
    2.g1和cms区别,吞吐量优先和响应优先的垃圾收集器选择
    3.说一下强引用、软引用、弱引用、虚引用以及他们之间和gc的关系,以及使用场景
    4.jdk8的新特性
    5.jstack 命令的使用
    2.java 基础
    问题:1.HashMap的实现原理,解决hash碰撞的方法,为什么HashMap不安全
    答:它是一个“链表散列”的数据结构,即数组和链表的结合体,要细化掌握;法有1.开放定址法 2.再哈希法 3.链地址法也叫拉链法(重点理解)4.建立一个公共溢出区;hash碰撞与扩容导致;
    2.ConcurrentHashMap和HashMap和HashTable 本质区别
    3.static和final的区别 已经对变量修饰时的加载顺序
    4.自动装箱和拆箱问题
    5.volatile的语义,它修饰的变量一定线程安全吗
    6.并发包(concurrent)是面试重点 互联网公司必问
    参考:http://www.cnblogs.com/dolphin0520/p/3932906.html
    7.Lock与synchronized 的区别
    8.设计pojo类时整型是用int还是Integer,为什么, 实际业务场景中需要注意什么
    9.了解哪些设计模式以及主要的应用场景
    10.io和nio
    3.spring+mybatis+springmvc
    说明:根据简历描述来问的
    问题:1.使用Spring框架的好处是什么
    2.Spring的工作原理 {基本就是ioc和aop的原理 延伸会问一些 使用了哪些设计模式}
    3.Spring中ApplicationContext加载机制和配置初始化
    4.获取spring的ApplicationContext几种方式
    5.Spring事务传播机制和数据库隔离级别 {基本上是概念的理解}
    6.Spring注解 列举几个
    7.mybatis通常一个Xml映射文件/注解,都会写一个Dao接口与之对应,dao如何找到 对应的配置文件的?
    关于mybatis面试的不多 可参考:http://www.cnblogs.com/huajiezh/p/6415388.html
    8.SpringMVC原理 如下:
     
    4.数据库相关(mysql)
    方向:1.mysql的存储引擎 其中对innodb重点理解
    2.mysql如果cpu使用极高如何处理 {show processlist命令,日志查找最慢SQL语句,是否使 用索引 缓存失效了几个方面 也就数据库优化}
    3.索引的工作原理 列举几种
    4.在判断题中也会出现 ddl dml具体命令
    5.主从同步存在时间差 读写分离(写主读从)如何避免
    4.Redis
    方向:1.redis的持久化 rdb和aof的区别
    2.存储的数据类型
    3.reids存储数据类型多样,具体运用在哪些场景
    4.redis的集群原理 什么情况下可以判断reids集群不可用
    5.如果多年使用redis会问reids3.0之前主从宕机切换的机制{哨兵机制}
    5.搜索引擎(Lucene)
    方向:1.lucene的索引结构{倒排索引}
    2.lucene分词器[常用的:庖丁,ansj] 实现原理
    3.查询分页
    6.MQ
    可能市面是mq框架太多基本没问过 只是聊过使用场景
    7.算法相关的笔试
    方向:1.lucene的索引结构{倒排索引}
    2.lucene分词器[常用的:庖丁,ansj] 实现原理
    3.查询分页
    8.前端
    跨域,对象取值,cookie sessionstorage localstorage 没具体的方向都是问问 不是重点
    7.架构和部署相关
    画一下公司平台结构图 根据图会问一些如果实现处理和可能存在的风险点怎么办,如何计算平台的
    并发值。
    8.算法相关笔试题
    链表反转,字符串翻转,位运算
    待完善
     
    9.面试官问你喜欢什么样的工作环境?

    我有很强的环境适应能力,可以在任何环境下正常工作不被打扰。
    当然,如果一定需要比较的话,我更喜欢学习型组织。
    当大家有着共同目标,并一起为了这个目标努力时,这个组织的氛围是最好的,并且组织中的成员的成长速度最快。

    10.
  • 相关阅读:
    @PostConstruct和 @PreDestroy注解
    【JQuery】,ajax请求中,url出现[Object Object]
    筛法求素数
    母牛的故事
    将一个数拆分
    计算两个日期差
    用二分查找——查找比目标元素略大的索引
    反向输出字符串
    bootstrap table合并单元格(该版本是简单的应用)
    获取访问者IP
  • 原文地址:https://www.cnblogs.com/xsj891107/p/9260244.html
Copyright © 2020-2023  润新知