1.Java包装类与基本数据类型的区别
包装类可以为null,基本数据类型不可以
包装类可以为泛型,基本数据类型不可以
基本数据类型比包装类型更高效 (基本数据类型存储到栈 包装类 存储到堆)
两个包装类型的值相同,但是地址值不同 ( == 比较内容以及地址值 equals 比较内容 )
自动拆箱与自动装箱 (包装类型->基本数据类型 拆箱 || 基本数据类型 -> 包装类 装箱)
2.基于SpringBoot,简述浏览器请求到服务器响应的具体过程(流程图/分点举例)
3.简述Redis中的hash数据类型,介绍为什么需要序列化存储
Redis hash 是一个string类型的field和value的映射表
可以看成KEY和VALUE的MAP容器 ,适合存储对象类型数据(相比于JSON)
序列化最终的目的是为了对象可以跨平台存储,和进行网络传输。而我们进行跨平台存储和网络传输的方式就是IO,而我们的IO支持的数据格式就是字节数组
- JdkSerializationRedisSerializer
- POJO对象的存取场景,使用JDK本身序列化机制
- 默认机制 ObjectInputStream/ObjectOutputStream进行序列化操作 (机器识别的数据)
- StringRedisSerializer
- Key或者value为字符串 (可以人阅读)
4.简述一下Spring的IOC容器
IOC(Inversion of Control 缩写为IOC) 控制反转,将创建对象交给spring容器,
是一种面向对象编程原则,降低代码之间的耦合度
5.一个order表,id是主键,user_id是用户id,需要查询order表中每个用户的订单数;
SELECT COUNT(*) FROM Orders group by user_id
项目
0.可以在介绍项目之前,说明项目的技术和架构,担任什么角色,所负责的功能模块
1.对于业务流程描述过于清楚,需要夹杂技术
3.项目中springboot 2.2.5
4.mybatis 和 mybatisplus 有无默认连接池
5.java怎么操作redis ## RedisTemplate和Jedis
6.数据库的优化 G
7.项目中springcloud 的组件
8.使用到哪种mq
9.对于数据库连接池了解有哪几种
(1)DBCP 是Apache提供的数据库连接池。tomcat服务器自带dbcp数据库连接池。速度相对c3p0较快,但因自身存在BUG,Hibernate3已不再提供支持。
(2)C3P0 是一个开源组织提供的一个数据库连接池,速度相对较慢,稳定性还可以,hibernate官方推荐使用。
(3)Proxool 是sourceforge下的一个开源项目数据库连接池,有监控连接池状态的功能,稳定性较c3p0差一点.
(4)BoneCP 是一个开源组织提供的数据库连接池,速度快。
(5)Druid 是阿里提供的数据库连接池,据说是集DBCP 、C3P0 、Proxool优点于一身的数据库连接池,但是速度不确定是否有BoneCP快。
10.数据结构 操作系统
11.什么是反射
可以通过Class来生成任意类的对象
12.mybaits于mybatisplus的区别
MyBatis:
所有SQL语句全部自己写
手动解析实体关系映射转换为MyBatis内部对象注入容器
不支持Lambda形式调用
Mybatis Plus:
强大的条件构造器,满足各类使用需求
内置的Mapper,通用的Service,少量配置即可实现单表大部分CRUD操作
支持Lambda形式调用
提供了基本的CRUD功能,连SQL语句都不需要编写
自动解析实体关系映射转换为MyBatis内部对象注入容器
13.........