面试interview

0、先自我介绍一下

博冠智能1面

1、Python列表和元组的区别

列表是动态数组,它们可变且可以重设长度(改变其内部元素的个数)。

元组是静态数组,它们不可变,且其内部数据一旦创建便无法改变。

元组缓存于Python运行时环境,这意味着我们每次使用元组时无须访问内核去分配内存。

2、SQL中的事务(mysql数据库中事务ACID特性是如何实现的)

MySQL 中事务的实现 - 路迢迢 - 博客园 (cnblogs.com)

1、原子性:回滚日志(undo log)

事务的状态也只有三种:Active、Commited 和 Failed

并发事务的回滚:级联回滚

2、持久性:重做日志(redo log)

3、隔离性:通过锁、时间戳、多版本和快照隔离实现隔离级别

四种数据库的事务的隔离级别:READ UNCOMMITEDREAD COMMITEDREPEATABLE READSERIALIZABLE;每个事务的隔离级别其实都比上一级多解决了一个问题:

  • RAED UNCOMMITED:使用查询语句不会加锁,可能会读到未提交的行(Dirty Read);
  • READ COMMITED:只对记录加记录锁,而不会在记录之间加间隙锁,所以允许新的记录插入到被锁定记录的附近,所以再多次使用查询语句时,可能得到不同的结果(Non-Repeatable Read);
  • REPEATABLE READ:多次读取同一范围的数据会返回第一次查询的快照,不会返回不同的数据行,但是可能发生幻读(Phantom Read);
  • SERIALIZABLE:InnoDB 隐式地将全部的查询语句加上共享锁,解决了幻读的问题;

以上的所有的事务隔离级别都不允许脏写入(Dirty Write),也就是当前事务更新了另一个事务已经更新但是还未提交的数据,大部分的数据库中都使用了 READ COMMITED 作为默认的事务隔离级别,但是 MySQL 使用了 REPEATABLE READ 作为默认配置;从 RAED UNCOMMITED 到 SERIALIZABLE,随着事务隔离级别变得越来越严格,数据库对于并发执行事务的性能也逐渐下降。

4、一致性:一致性对事务的要求不止包含对数据完整性以及合法性的检查,还包含应用层面逻辑的正确

3、SQL中的索引

SQL索引详解 - 老皮肉 - 博客园 (cnblogs.com)

SQL中的索引 - CHANGEMAX - 博客园 (cnblogs.com)

4、SQL多表查询的方式

(13条消息) 【SQL】—多表查询的几种连接方式_全力奔跑,梦在彼岸-CSDN博客_sql 连表查询

5、string、stringbuffer、stringbuilder的区别

(13条消息) String、StringBuffer与StringBuilder之间区别_itchuxuezhe_yang的专栏-CSDN博客_stringbuffer

6、项目是团体的还是个人的?团体的你谁什么角色做了哪些工作?

7、参加的华为比赛中你做了什么?参加的科大讯飞比赛中你做了什么?

8、硕士期间搞了这么多算法,为什么不找算法岗?

9、常见的java包

第一个包:java.lang包。

该包提供了Java语言进行程序设计的基础类,它是默认导入的包。该包里面的Runnable接口和Object、Math、String、StringBuffer、System、Thread以及Throwable类需要重点掌握,因为它们应用很广。

第二个包:java.util包。

该包提供了包含集合框架、遗留的集合类、事件模型、日期和时间实施、国际化和各种实用工具类(字符串标记生成器、随机数生成器和位数组)。

第三个包:java.io包。

该包通过文件系统、数据流和序列化提供系统的输入与输出。

第四个包:java.net包。

该包提供实现网络应用与开发的类。

第五个包:java.sql包。

该包提供了使用Java语言访问并处理存储在数据源(通常是一个关系型数据库)中的数据API。

10、AJAX的优点?AJAX异步请求怎样实现?

11、JSP的9大内置对象及其各自作用,forward转发和redircet重定向的区别

12、post和get


山大地纬1面

1、软件工程生命周期

(1)计划和需求分析、设计项目架构、开发和编程、测试、部署

(2)可行性研究阶段、需求分析阶段、软件设计阶段(概要设计&详细设计)、软件测试阶段、软件运行和维护阶段

(3)瀑布模型(声明周期法):计划、需求分析、设计、编码、测试、运行&维护

(13条消息) 软件工程:软件开发生命周期 (SDLC)_Warren Lynch 的博客-CSDN博客_sdlc

(13条消息) 软件开发生命周期汇总_JAVA圈的博客-CSDN博客

2、事务的特性

3、引起死锁的条件

(13条消息) 死锁的四个必要条件和解决办法_半暖的博客-CSDN博客_死锁的四个必要条件

(13条消息) 死锁面试题(什么是死锁,产生死锁的原因及必要条件)_hd12370的博客-CSDN博客_死锁

死锁产生的原因及四个必要条件 - oayx - 博客园 (cnblogs.com)

解决方法:死锁预防、死锁避免、死锁检测和解除

4、MVC架构模式


海康威视1面

1、sychronized关键字的可重入锁

2、java在linux常用的命令,文件相关的常用命令

3、集合大介绍

4、arraylist. linkedlist的应用场景和谁更占内存(linked可以当做队里,忘记说了)

5、springboot和spingmvc的区别

6、springboot底层原理

7、javaGUI用了swing和啥类/接口

8、wait()和sleep()的区别

9、跨域问题,什么情况会出现跨域问题

10、学习过程中的收获

11、未来职业规划


众阳健康1面

java与其他语言的不同(与C/C++等,从编译型&解释型,从跨平台方面回答)
arraylist线程不安全,那么线程安全的list是啥(答的vector,面试官问除了他呢还有啥)好像是copyOnWriteArrayList
集合大全详解
实现线程的几种方式
想让线程返回数据怎么办
线程池了解吗,线程池的各种参数

hashmap扩容原理
hashmap线程不安全,用什么代替,线程安全的map(答的currenthashmap),问currenthashmap是那个包下的
hashmap的遍历方式

arraylist和linkedlist的区别和遍历方式区别
settergetter不想写,用一个什么插件好像
实现分页的逻辑+用mybatis实现分页的逻辑

springmvc中,控制层类及其里面的属性和方法的注解,service层的注解

**********************************


众阳健康2面

敏捷开发、springcloud、中台、微服务、云部署系统saas


山大地纬2面

现在让你重做你基础的项目图书馆管理系统,你打算采用什么架构?前后端分离吗(为什么,优缺点),框架使用什么?数据库这块用什么交互,mybatis吗

mybatis的优缺点(优点

相较于传统jdbc的优点?

mybatis有几种模式

说话慢点不用紧张,太快了面试官都没听清你硕士的研究,

重新介绍一下你硕士期间的研究(遥感、卫星、图像、深度学习等概念、特征等)

全部评论

相关推荐

jack_miller:杜:你不用我那你就用我的美赞臣
点赞 评论 收藏
分享
10-13 17:47
门头沟学院 Java
wulala.god:图一那个善我面过,老板网上找的题库面的
点赞 评论 收藏
分享
6 51 评论
分享
牛客网
牛客企业服务