对线面试官的资本

对线面试官的资本

该随笔来自知乎大佬的回答,稍作整理。

起源是一位小白的美好幻想,MVC+Mybatis想唬住面试官。

基础

  • 接口及常见问题

    • @Autowired

    • @Component @Repository @Service @Controller

    • 写好接口壳子,入参是一个,多个,集合,文件?出参 是一个,多个,集合,文件

    • 接口文档

      swagger -> knife4j、springfox

    • 参数校验

      springboot+validation

      JSR303

    • 开源工具包

      • apache commons
      • goole guava
      • hutools
      • lombok
    • java8 optional

    • 异常处理

    • springboot

      • 原理,搭建,主要配置
      • 事务
    • mybatis

      • @select,@update

      • mybatis动态参数 注解/xml文件方式

      • pagehelper分页

精通ssm

  • aop,ioc 默写全文声明事务以及事务传播的方式

  • 默写全文spring事务不生效的原因

  • 默写全文什么是数据库连接池,

  • 你怎么用(hikari,druid)背诵并默写全文spring多数据源配置

  • 请简述主要步骤.mybatis #{}和${}啥区别(其实这是ognl表达式..)

  • Mybatis都有哪些Executor执行器Mybatis的一级、二级缓存sqlsession生命周期..

提高

mysql

  • mysql innodb原理
  • mysql事务隔离级别 必问
  • mysql索引原理(就是背诵b树,b+树)
  • sql优化
  • 执行计划
  • msql不走索引的原因
  • 乐观锁
  • inner join,left join,right join
  • mysql左原则
  • 大小表查询优化

redis

  • 高频数据
  • 共享数据
  • 分布式锁

SQL装逼

  • 列转行
  • 开窗函数
  • 分页优化
    • 使用子查询优化
    • 使用 id 限定优化
  • 批量插入数据
  • mysql原理

jvm装逼

  • jvm内存模型
  • 复制回收算法。
  • 标记回收算法。
  • 分代回收算法。
  • 引用计数法
  • 可达性分析
  • 串形收集器 s开头
  • 并行收集器 p开头
  • cms 1.7 并行标记回收算法
  • g1 jdk10 混合 可预测,延迟小
  • zgc jdk16 牛逼,神一般,甚至1-2毫秒
  • 垃圾回收工作回占用资源

jdk特性装逼

1.9+没人用

  • 1.8
    • default
    • Lambda,stream
    • 双冒号
    • LocalDate
    • optional
  • 1.9
    • 模块化
  • 10
    • var
    • g1
  • 11
    • 字符串去除首位空格,判断空
  • 12
    • switch 多条件
  • 13
    • Scala 三引号
  • 14
    • instanceof 内部自动转类型
    • record 省略getset
    • switch 函数作为条件
  • 15
    • zgc 性能更牛逼

jvm调优装逼

  • 大体思路

    • 序列化

    • 去除魔法值

    • 构造函数注入bean

    • foreach替换for

    • nacos替换eureka

    • okhttp/fegin替换httclient

    • 更新springboot,springcloud版本

    • Apache codec替换sun包加密

  • 具体问题(提高接口响应速度)

    • 懒加载字段
    • redis
    • elasticsearch

原链接

上一篇:Centos7 Linux安装GCC


下一篇:Python 最常用模块函数代码汇总解析