25届实习面经1(北京)

#软件开发2024笔面经#

主要时根据简历上项目提出的问题。

1.解释单点登录 

单点登录的英文名叫做:Single Sign On(简称SSO),指在同一帐号平台下的多个应用系统中,用户只需登录一次,即可访问所有相互信任的系统。简而言之,多个系统,统一登陆。

2.为什么使用hashmap,不使用其他map

(1)高效的查找、插入和删除操作:HashMap基于哈希表实现,通过哈希函数可以快速定位到键值对在内存中的存储位置,因此其查找、插入和删除操作的时间复杂度在理想情况下可以达到O(1)。这使得HashMap在处理大规模数据集时具有非常高的效率。

(2)动态扩容与缩容:HashMap可以动态调整其容量,根据实际需要自动进行扩容或缩容。这种特性使得HashMap能够更好地适应不同规模的数据集,同时保持高效的性能。

(3)允许null键和null值:HashMap允许键和值为null,这在某些场景下非常有用。例如,在某些应用中,可能需要使用null作为键来存储特殊的数据项。

(4)灵活性:HashMap提供了丰富的API,使得开发者可以方便地进行各种操作,如获取键值对、遍历Map等。此外,HashMap还可以与Java的集合框架进行无缝集成,方便与其他数据结构进行交互。

3.为什么使用mybatisplus中的queryWrapper,不使用传统mapper ,sql.

  1. 动态 SQL 生成:QueryWrapper 允许你以链式编程的方式构建 SQL 查询条件,使得构建复杂查询变得简单而灵活。你可以根据业务逻辑动态地添加 WHERE 子句、排序、分组等,而无需手动编写大量的 SQL 语句。这种动态构建 SQL 的方式大大减少了重复劳动,提高了开发效率。
  2. 代码可读性:使用 QueryWrapper,你可以将 SQL 查询逻辑与业务逻辑更紧密地结合在一起,使得代码更加清晰和易读。相比传统的 Mapper XML 文件或注解 SQL,QueryWrapper 的链式调用方式更符合 Java 的编程习惯,使得代码结构更加直观和易于理解。
  3. 减少 SQL 语句的冗余:在传统的 Mapper 方法中,对于相似的查询,你可能需要编写多个类似的 SQL 语句,只是条件略有不同。而使用 QueryWrapper,你可以通过改变查询条件来构建不同的查询,而无需编写多个 SQL 语句。这大大减少了代码的冗余,提高了代码的重用性。
  4. 更易于维护和扩展:将 SQL 查询逻辑与 Java 代码紧密结合在一起,使得代码更易于维护和扩展。当业务需求发生变化时,你可以直接在 Java 代码中修改查询逻辑,而无需跳转到另一个文件或位置。这种集中的管理方式使得维护变得更加简单和直接。
  5. 简化数据访问层开发:(面向对象的,面试官主要想问的)MyBatis-Plus 的自动映射功能使得查询结果可以直接封装到对应的实体类中。这意味着你无需手动编写繁琐的映射逻辑,MyBatis-Plus 会自动将查询结果映射到实体类的字段上。这种自动映射功能大大简化了数据访问层的开发工作,提高了开发效率。

4.讲一下vue的双向绑定(v-model)

v-model 的基本用法是将其绑定到一个 Vue 实例的数据属性上,这样当用户在表单元素中输入或修改数据时,该数据属性会自动更新。反之,当数据属性在 Vue 实例中发生变化时,表单元素的值也会相应地更新。​

全部评论

相关推荐

点赞 评论 收藏
转发
1 5 评论
分享
牛客网
牛客企业服务