知识改变命运! 我向20k+以上的java高级开发工程师提了那些面试问题_猿份哥-lskyf博客社区

我向20k+以上的java高级开发工程师提了那些面试问题

猿份哥 1年前 ⋅ 1376 阅读 ⋅ 0 个赞

公司需要一位java高级开发工程师,找到我去面试。我回忆了一下,记录部分我的提问,如果大家刚兴趣可以给我留言,我视情况看是否继续补充,或者是否提供答案。

1.聊聊您对spring Boot一些见解

见文末参考答案

2.spring Boot中如何自定义starter?

见文末参考答案

3.说说spring Boot中配置文件的加载顺序

见文末参考答案

4.spring Boot中你是如何处理异常的?

见文末参考答案

5.spring Boot中如何开启异步?

见文末参考答案

6.spring Boot中如何实现定时任务?

见文末参考答案

7.@RestController和@Controller的区别?

见文末参考答案

8.可以谈谈List与linkedList吗?

见文末参考答案

9.可以谈谈String,StringBuilder,StringBuffer吗?

见文末参考答案

10.你喜欢怎么使用redis?

见文末参考答案

11.工作中你是如何防止数据重复的?

见文末参考答案

参考答案

1.Spring Boot 是一个用来简化 Spring 应用程序开发的框架,它提供了一种快速、简单的方法来创建独立的、生产级的基于 Spring 的应用程序。Spring Boot 提供了许多自动配置功能,可以帮助开发人员快速搭建和运行应用程序。

2.要在 Spring Boot 中自定义 starter,您需要创建一个新的项目并添加必要的依赖。然后,您可以在该项目中定义自己的自动配置类,并使用 @EnableAutoConfiguration 注解来启用它。最后,您需要在项目的 resources/META-INF 目录下创建一个名为 spring.factories 的文件,并在其中指定您的自动配置类。

3.Spring Boot 配置文件的加载顺序如下:

1. 命令行参数
2. 来自 `SPRING_APPLICATION_JSON` 的属性
3. `ServletConfig` 初始化参数
4. `ServletContext` 初始化参数
5. JNDI 属性
6. Java 系统属性
7. 操作系统环境变量
8. 随机值属性源
9. 应用程序外部的配置文件
10. 打包在应用程序内部的配置文件
11. 通过 `@PropertySource` 注解指定的属性源
12. 默认属性

4.在 Spring Boot 中处理异常通常有两种方法:使用 @ControllerAdvice 注解和 @ExceptionHandler 注解来定义全局异常处理器,或者使用 ErrorController 接口来定义自定义错误页面。这两种方法都可以帮助您更好地控制应用程序中的异常处理。

5.要在 Spring Boot 中开启异步,您需要在配置类上添加 @EnableAsync 注解,并定义一个 AsyncConfigurer 类型的 bean 来配置异步执行器。此外,您还可以在需要异步执行的方法上添加 @Async 注解。

6.在 Spring Boot 中实现定时任务,您需要在配置类上添加 @EnableScheduling 注解,并在需要定时执行的方法上添加 @Scheduled 注解。您可以使用 cron 表达式或固定延迟时间来指定任务的执行时间。

7.@RestController@Controller 的区别在于:@RestController 是一种组合注解,它组合了 @Controller@ResponseBody 两个注解。这意味着当您使用 @RestController 注解来标记一个控制器时,该控制器中所有方法的返回值都将自动转换为 JSON 或 XML 格式并写入响应体中。而当您使用 @Controller 注解时,则需要在每个方法上添加 @ResponseBody 注解才能实现相同的效果。

8.List 和 LinkedList 都是 Java 集合框架中的接口和类。List 是一个有序集合,它允许存储重复元素并且可以通过索引来访问元素。LinkedList 是 List 接口的一个实现类,它是一个双向链表,提供了更快的插入和删除操作,但随机访问速度较慢。

9.String、StringBuilder 和 StringBuffer 都是 Java 中用于表示字符串的类。String 是不可变类,一旦创建就不能修改。StringBuilder 和 StringBuffer 都是可变类,可以通过 append、insert、delete 等方法来修改字符串内容。StringBuilder 和 StringBuffer 的主要区别在于:StringBuilder 是非线程安全的,而 StringBuffer 是线程安全的。

10.Redis 是一个开源、支持网络、基于内存、可选持久性的键值对存储数据库。我喜欢使用 Redis 来实现缓存、会话管理、排行榜等功能。Redis 提供了丰富的数据类型和命令,可以帮助我快速实现各种需求。

11.在工作中防止数据重复,我通常会使用唯一索引、主键约束或者在应用程序中进行检查来实现。此外,我还会使用分布式锁来保证数据的一致性。这些方法都可以有效地防止数据重复。


全部评论: 0

    我有话说:

    java程序员必须知道网站

    sping官网 spring各种框架给java开发带来便利至今无法撼动 github 有各种语言项目都有托管在上面,各种demo使用起来省心省力 stackoverflow 各种程序所遇到

    开发企业微信相关应用时遇到问题怎么办?如何快速解决问题

    背景: 虽然开发企业微信应用时候会遇到各种问题,但是企业微信已经给我们提供各种文档和帮助。实际开发中遇到问题怎么办呢? 首先从文档出发 出现问题时,对照接口文档,是否按照企业微信文档进行接口

    miui10开发者选项在哪?终于找到

    依次点击“设置”-“设备”-“全部参数”,连续点击五次miui版本就可以开启开发者选项。然后在设置里面更多设置就能找到开发者选项

    Java 平台标准版文档

    您在台式机和服务器上开发和部署 Java 应用程...

    csdn博客专栏出bug好久,之前申请专栏不见专栏达人勋章也不见,后面申请专栏文章数量不正确,热度也不正确!

      csdn博客专栏出bug好久,之前申请专栏不见专栏达人勋章也不见,后面申请专栏文章数量不正确,热度也不正确!客服说工程师在修复,不知道什么时候修复好啊!之前专栏

    最新镜像网站整理,拒绝软件开发中maven,工具等资源下载慢,下载不!拿走不谢!

    前言 经常会遇到软件开发资源无法下载,考虑到大多数据童鞋都会遇到这样问题于是花点时间整理出一份最新新镜像网站!希望能帮助到大家! 拿走不谢 企业镜像站(阿里,腾讯,华为镜像多而全推荐使用

    卸载游戏和视频播放器收获这些

    人都会有懒性,不是每个人自控力一开始那么强,都会有懈怠与放松时候。 以前一天状态 自从没有上班之后,就处于天天躺着玩手机状态,玩好几个小时游戏,然后在煲几个小时剧,一天时间就是

    spring boot面试题及答案持续更新中

    2019-07-28最新整理spring boot面试题及答案 1.Spring Boot是什么 这是摘自官方一段话 Spring Boot is designed to get you up

    手机黑屏开不机?

             正玩这手机但是手机突然黑屏开不开机键无论怎么按完全不起作用。焦急心理欲哭无泪啊!下面给大家讲述一个强制开机方法(

    Java如何返回多个值

      有一个方法,需要返回多个对象。可是Java只能返回一个值,请问如何才能返回多个值呢?

    那朴实善良婆婆

    曾经无数次想象过会遇见婆婆,看电视剧多,反而有点担心婆媳关系不和,在婆家不被待见、给难堪、在她儿子面前一样背后一个样。后来遇到婆婆这些担忧就烟消云散那朴实善良婆婆 毫不客气

    借着你光,看到一个全新更好世界

    最喜欢追榜样模式:借着你光看到一个全新更好世界,也借着喜欢你,让自己成为更好人。 昨天看见热搜:“靳东老年粉有多疯狂”,点进去看一下,是一个大妈被某短视频平台假靳东骗。听

    体重复胖中得到经验

    你用多贵口红别人不一定知道,但是你胖瘦别人一眼就看得出来。 减肥成功 在去年之前有胖过四年左右时间,就是130以上140以下体重,2017开始健身,喜欢跑步,就是任性跑,不做拉伸。结果人还

    那些村里人嘲笑不帮忙父母干活人后来怎么样

    时代不同,人们思想与理念也完全不同。像我们父母辈那些人,很少有人是小学毕业,有些甚至都没有去过学校,他们中大部分人,从小就跟着父母干农活、放家畜,然后结婚生子,一辈子都没有出过县城

    也会有发光发亮那么一天

    很多时候我们都是进入社会才会慢慢成熟、长大、学会与人相处。总是那无数次碰壁才让我们学会该怎样存活在这个残酷世界。 现在已经没有学校里读书时候任性,也不再想那么合群。 也会有发光发亮

    加入公众号
    加入公众号