“金三银四”春招指南!【Java面试官

16、什么是Spring Cloud?

17、什么是Spring引导的执行器?

18、微服务架构如何进行解耦?

19、为什么需要域驱动设计(DDD)?

20、微服务之间是如何独立通讯的?

21、Spring 和 SpringBoot 有什么不同?

22、SpringBoot starter 作用在什么地方?

23、怎么禁用某些自动配置特性?

// 方案1,下面的代码段是使 DataSourceAutoConfiguration 无效:
@EnableAutoConfiguration(exclude = DataSourceAutoConfiguration.class)
public class MyConfiguration {}
// 方案2
@SpringBootApplication(exclude = DataSourceAutoConfiguration.class)
public class MyConfiguration { }
// 方案3,// 在配置文件中配置一种通过配置文件yml或者properties,内设置

24、SpringBoot 的自动化配置

25、当 bean 存在的时候怎么置后执行自动配置?

为了当 bean 已存在的时候通知自动配置类置后执行,我们可以使用 @ConditionalOnMissingBean 注解。这个注解中最值得注意的属性是:

value:被检查的 beans 的类型name:被检查的 beans 的名字

当将 @Bean 修饰到方法时,目标类型默认为方法的返回类型:

@Configuration
public class CustomConfiguration {
    @Bean
    @ConditionalOnMissingBean
    public CustomService service() { ... }
}

26、怎么使用 SpringBoot 去执行命令行程序?

像其他 Java 程序一样,一个 SpringBoot 命令行程序必须要有一个 main 方法。这个方法作为一个入口点,通过调用 SpringApplication#run 方法来驱动程序执行:

@SpringBootApplication
public class MySpringBootApplication {
    public static void main(String[] args) {
        SpringApplication.run(MySpringBootApplication.class);
    }
}

27、SpringBoot 支持松绑定代表什么

SpringBoot中的松绑定适用于配置属性的类型安全绑定。使用松绑定,环境属性的键不需要与属性名完全匹配。这样就可以用驼峰式、短横线式、蛇形式或者下划线分割来命名
表示驼峰式、下划线()、短横线(-)
标准方式
person.firstName
方式一:大写用-
person.first-name
方式二:大写用

person.first_name
三种方式,都可以使用
推荐,属性书写方式
PERSON_FIRST_NAME

28、SpringBoot DevTools 的用途是什么?

29、Java中springboot常用的starter有哪些

  • spring-boot-starter-web 嵌入tomcat和web开发需要servlet与jsp支持
  • spring-boot-starter-data-jpa 数据库支持
  • spring-boot-starter-data-redis redis数据库支持
  • spring-boot-starter-data-solr solr支持
  • mybatis-spring-boot-starter 第三方的mybatis集成starter

30、Spring Initializr 是创建 Spring Boot Projects 的唯一方法吗?

第一种方法是 start.spring.io在 Idea 中,使用文件 - 新建 Maven 项目来创建一个新项目1.添加依赖项。 2.添加 maven 插件。 3.添加 Spring Boot 应用程序类。

31、为什么我们需要 spring-boot-maven-plugin?

32、什么是 Spring Data?

33、我们能否在 spring-boot-starter-web 中用 jetty 代替 tomcat?

34、如何使用 Spring Boot 生成一个 WAR 文件?

35、RequestMapping 和 GetMapping 的不同之处在哪里?

Spring4.3中引进了{@GetMapping、@PostMapping、@PutMapping、@DeleteMapping、@PatchMapping},来帮助简化常用的HTTP方法的映射,并更好地表达被注解方法的语义。

以@GetMapping为例,Spring官方文档说:
@GetMapping是一个组合注解,是@RequestMapping(method = RequestMethod.GET)的缩写。该注解将HTTP Get 映射到 特定的处理方法上。

36、可以配置 application.propertierde 的完整的属性列表在哪里可以找到?

37、JPA 和 Hibernate 有哪些区别?

  • Hibernate是JPA规范的一个具体实现
  • hibernate有JPA没有的特性
  • hibernate 的效率更快
  • JPA 有更好的移植性,通用性

38、Spring Boot 的核心注解是

@SpringBootApplication

最后

无论是哪家公司,都很重视基础,大厂更加重视技术的深度和广度,面试是一个双向选择的过程,不要抱着畏惧的心态去面试,不利于自己的发挥。同时看中的应该不止薪资,还要看你是不是真的喜欢这家公司,是不是能真的得到锻炼。

针对以上面试技术点,我在这里也做一些资料分享,希望能更好的帮助到大家。

戳这里免费领取以下资料

转存中…(img-Lmu223d0-1628080623223)]

[外链图片转存中…(img-jfGflW7M-1628080623226)]

[外链图片转存中…(img-TdK9W4DF-1628080623228)]

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值