- 笔试
1.1. == 和 equals 的区别
1.2. get 和 post 的区别
1.3. SpringMVC中@ReponseBody在什么情况下使用,@PathVariable怎么使用
1.4. JVM堆的结构
1.5. 什么GC,GC的作用是什么
1.6. Innodb和MYISAM的特点
1.7. 谈谈你对MySQL事物的理解
1.8. 统计出会员id=100,日期是2023年6月内的积分数据,如图
id | 会员id | 会员名称 | 会员积分 | 日期 |
---|---|---|---|---|
100 | 100 | 小王 | 10 | 2023-06-01 11:30:57 |
101 | 102 | 小明 | 10 | 2023-06-04 11:30:57 |
102 | 100 | 小王 | -10 | 2023-06-04 11:30:57 |
103 | 106 | 小张 | 10 | 2023-06-03 11:30:57 |
1.9. 谈谈如何优化数据库
1.10. 实现OAuth2.0或单点登录其中一种方式
1.11. 你在编程时有哪些防注入攻击
1.12. 有一个订单表,一个产品表,一个产品订单表。你会如何设计表的映射关系
2. 自我介绍
3. 你这些项目接触到的单表数据量最多是多少?那个表加过索引吗?对哪些字段加了索引?
4. 那你数据量最多的是个什么表?除了主键还有加其他索引吗?
5. 你们公司有多少部门?你们产品经理主要负责什么?
6. 那你看过那个表哪些字段加了索引?
7. 你平时写代码的时候,你怎么知道哪些字段需要加索引
8. 像组合索引和复合索引你知道吗?比如说我建了一个a,b,c联合索引。我写代码的时候先写的c,b,a可以吗?
9. 我们平时跟数据库打交道都需要开启事物,在controller、Service、dao层我们会把事物放到哪一层。
10. 那我们查询list会加事物吗?
11. 使用delete删除时会加事物吗?
12. 看你这个项目是分布式项目,你们分布式这个分布式事物是怎么处理的
13. 你知道为什么要使用分布式事物,分布式事物用来解决什么问题?
14. 假设我的银行卡里面只有10块钱,现在过来10个请求都要扣10块钱,是你的话你会怎么控制?
15. 你进行加锁的话,会加什么锁?如果是分布式的呢?
16. 开发代码都是放在哪里是git还是svn?
17. 开发的时候来了一个新需求,你们的分支是怎么管理的?
18. 你们增加新需求,分支是从哪里新增的?
19. 你们新建完一个分支之后就开始改代码吗?
20. 开发完之后测试的话,这个代码放到哪里去?
21. 假如现在又来了两个新需求,一个需求先上线,一个需求过几天上线。你们的分支是怎么管理的?
22. 你们那个测试拉代码是运维拉代码还是测试拉代码
23. 反问
还有几个笔试题忘记了,分布式事物这一块忘记了。seata说成了sentinel