-
什么是进程的内核态和用户态?
-
了解大数据领域的相关工具:
○ HDFS:黑马
○ MapReduce:黑马
○ HIVE
○ HBASE
○ Yarn:Bilibli○ Spark
○ Flink -
秒杀系统:
○文章1 -
Mybatis相关:
○ Mybatis一级缓存和二级缓存
○ Mybatis动态SQL:Java知音、Myabtis
foreach(collection=?, item=“item” index=“index”):当传入的参数类型是集合或数组时,"item"代表当前迭代到的元素(别名),"index"表示当前迭代到的元素在集合或数组中的序号;当接口传入的参数类型为Map时;
○ Mybatis四种分页方式:W3Cschool
○ 如何在代码中实现外键?稀土掘金、CSDN -
MySQL相关:
○MVCC
○行锁、间隙锁、临键锁
○当前读和快照读(一致性读)
○在RR隔离级别下(MySQL的默认隔离级别),快照读可以同时解决不可重复读和幻读,当前读需要通过临键锁解决不可重复读和幻读(事务提交以后加的锁才会被释放)
○索引失效的情况
○Select语句执行顺序1
○Select语句执行顺序2
○Select字段是否必须出现在GroupBy中
○左连接、右连接、内连接、全连接、自连接
○获取每个部门薪资最高的3个人
○select只能查询出现在group By中的字段或者聚合函数
○from (表连接) --> where (条件过滤) --> group By(数据分组) —> Having(分组过滤) —> Select(查询) —> order By(排序) —> limit(截取)
○MySQL的BinLog -
SpringBoot的相关参考资料:
○SpringBoot中文文档 -
操作系统:
○死锁的四个必要条件 -
计算机网络:
○DDOS攻击 -
多线程并发:
○检测死锁的工具 -
Java日期转换:
○Java 日期相关类 -
Java int数组、Integer数组、List<Integer>相互转换:
○CSDN -
Java反射:
○CSDN -
Java范型理解:
○ <? extends/super T>
○ <?/T> -
Java文件流:
○递归创建文件和目录
○打包文件或目录.tar.gz -
Java集合:
○将一个集合分隔成若干个子集合
○将集合中的字符串用指定的间隔符连接起来 -
Java占位符:
○简书 -
Java比较器:
○腾讯云 -
Java中Scanner类nextLine()和next()的区别:
○博客园 -
Java 中 break continue label的使用:
○简书 -
Java中Long、Float、Double类型变量赋值:
○CSDN -
Java中DecimalFormat和BigDecimal:
○DecimalFormat简书
○ BigDecimal简书 -
Java Base64加密解密:
○CSDN -
Spring事务(@Transactional):
○ 事务的七种传播行为:segmentfault -
Java单元测试:
○Mockito+Junit Blibli -
ArrayList的sublist:
○ 菜鸟教程 -
ThreadLocal:
○ 如果我们希望通过某个类将状态(例如用户ID、事务ID)与线程关联起来,那么通常在这个类中定义private static ThreadLocal实例:Java全栈知识体系
○ 为什么TreadLocal会发生内存泄漏?segmentfault -
父类中的私有属性能否被子类所访问?:知乎
-
开发规范手册:
○ 阿里开发手册 -
23种设计模式:
○ c语言中文网 -
什么是Servlet:
○亿速运
○tomcat和servlet的关系
○tomcat中的四种servlet容器
○Springboot如何处理请求映射 -
HTTP接口和RPC接口的含义和区别:
○ segmentfault -
Intellij Debug模式:
○技术印记 -
内部类和静态内部类:
○ 知乎
○ 博客园
○ segmentfault1
○ segmentfault2 -
为什么需要内部类:
○ 匿名内部类使代码更加简洁,降低包的深度
○ 将存在一定逻辑关系的类组织在一起,对外界隐藏(更好的封装)
○ 每个内部类都能够独立的继承一个接口的实现,所以无论外部类是否已经继承了某个接口的实现,对内部类其实都没有影响,因此通过内部类可以实现多继承 -
定时任务的实现方式:
-
Kubernetes知识回顾:
○ Kubernetes文档社区
○ Kubernetes灰度升级
○ 蓝绿发布、滚动更新、灰度更新 -
通过命令行执行脚本
○ python脚本 -
SQL注入:
○通过输入非法的参数(在SQL中插入恶意逻辑),从而更改原有的SQL语句的结构,从而达到欺骗数据库执行恶意逻辑的目的,非法获取数据库相关信息(猜解数据库结构、绕过登陆验证)。在某些特殊场合下只能用${},不能用#{}。例如:在排序时ORDER BY ${id},如果使用#{id},则会被解析成ORDER BY “id”,这显然是一种错误的写法。首先进行动态解析(参数校验、动态SQL处理、占位符处理);然后进行预编译;Mybatis默认情况下会对所有语句进行预编译;最后执行。
○Mybatis预编译过程
○Mybatis的#{ }和${ }区别 -
Swagger2常用注解说明:
○CSDN -
CompletableFuture/ListenableFuture用法详解:
○CompletableFuture
○博客园 -
HTTP接口和RPC接口的区别:
○SegmentFault -
git 代码回滚与找回的艺术:
○segmentFault -
Stream和lambda表达式:
○ Java8 ::
○ Lambda表达式
○ Java8 Stream API
○ Java8 Stream API
○Stream排序后执行操作 -
中台是什么:
○稀土掘金 -
OAUTH 2.0:
○OAuth 2.0 的一个简单解释
○理解OAuth 2.0 -
Lua脚本:
○CSDN -
DevOps:
○哔哩哔哩
优秀文章地址
于 2022-03-14 17:51:31 首次发布