Java小白面试记
应该是第四次了~
问的问题很细,而且很多,出来时脑子已经懵了,只记得自己回答的很不好。断断续续的想起他问的一些问题,就记下来了,下次一定记得录音~~
-
Springboot了解吗?
我刚接触,所以很没自信地说了句不了解 -
SpringBoot的配置文件放在哪儿?
内心是**的,都说不了解了,还问。
查了一下不知道是不是问的这个:Spring Boot使用了一个全局的配置文件application.properties,放在src/main/resources目录下或者类路径的/config下。Sping Boot的全局配置文件的作用是对一些默认配置的配置值进行修改。 -
谈一下进程和线程?
进程是程序的一次执行过程,是程序在执行过程中分配和管理资源的基本单位,每一个进程都有一个自己的地址空间,至少有 5 种基本状态,它们是:初始态,执行态,等待状态,就绪状态,终止状态。
线程是CPU调度和分派的基本单位,它可与同属一个进程的其他的线程共享进程所拥有的全部资源。
线程是进程的一部分,一个线程只能属于一个进程,而一个进程可以有多个线程,但至少有一个线程。
根本区别:进程是操作系统资源分配的基本单位,而线程是任务调度和执行的基本单位
[更多内容可以看下这个兄弟写的]https://www.cnblogs.com/jobbible/p/9766649.html() -
假如要你批量插入几百万条数据你打算怎么实现的?你会选择用代码还是SQL解决?
修改事务的提交方式,将多次提交变为一次,使用批量操作。应该可以用SQL解决吧,用存储过程 -
高并发怎么处理?
-
MyBatis的工作流程是什么?
①解析配置文件(MyBatis-config.xml、Mapper.xml)
②SqlSessionFactoryBuilder创建会话工厂SqlSessionFactory
③SqlSessionFactory创建会话SqlSession
④执行器将MappedStatement对象进行解析,sql参数转化、动态sql拼接,生成jdbc Statement对象,使用Paramterhandler填充参数,使用statementHandler绑定参数。
⑤JDBC执行sql,借助MappedStatement中的结果映射关系,使用ResultSetHandler将返回结果转化成HashMap、JavaBean等存储结构并返回。
⑥最后关闭sqlsession会话。
[具体看这个吧]https://baijiahao.baidu.com/s?id=1666562082269776543&wfr=spider&for=pc() -
MyBatis是如何将sql执行结果封装为目标对象并返回的?
①使用 sql 列的别名功能,将列的别名书写为对象属性名。
②使用标签,逐一定义数据库列名和对象属性名之间的映射关系 -
多表连接有哪些?
连接查询主要分为三种:内连接、外连接、交叉连接。
内连接:只返回满足连接条件的数据行;
外连接:不只列出与连接条件相匹配的行,而是列出左表(左外连接时)、右表(右外连接时)或两个表(全外连接时)中所有符合搜索条件的数据行。外连接分为左外连接、右外链接、全外连接三种。
交叉连接:两个表做笛卡尔积,得到的结果集的行数是两个表的行数的乘积。 -
如果有三张表或五张表,如何进行关联?
我只知道加多个join,多表关联本质上其实还是两张表关联。 -
什么是长连接短连接?
我觉得现阶段还理解不了
[点]https://www.cnblogs.com/gotodsp/p/6366163.html() -
七层模型中的第四层是什么?
传输层 -
第四层和第七层分别有哪些应用?
TCP、UDP在第四层,第七层有HTTP、HTTPS、FTP、POP3、SMTP等 -
反射是什么?你在哪里会用到反射?
**反射机制运行时,只要给定类的名称,就可以动态的获取类的信息和调用对象的方法。
应用场景:
JDBC中,加载MySQL的驱动类;
Spring 框架的 IOC(动态加载管理 Bean)创建对象以及 AOP(动态代理)功能都和反射有联系 **
你的二级分类导航是怎么实现的?
①首先查找出所有的分类,全部的课程方向
②然后根据课程方向id查询对应的课程内容,将一级分类获取出来
③为了二级分类的存储,我们还需要去实体类中再加一个属性
最后根据课程方向id和课程内容id查询对应课程
public List<Course> findCourseByCourseDirectionIdAndCourseContenId(int courseDirectionId, int courseContentId) {
Map<String,Object> map = new HashMap<>();
map.put("courseDirectionId", courseDirectionId);
map.put("courseContentId", courseContentId);
return mainMapper.selectCourseByCourseDirectionIdAndCourseContentId(map);
}
- Linux基本命令说一下,用Linux怎么写脚本?
怎么用Linux怎么写脚本啊。。。

浙公网安备 33010602011771号