Spring Boot 面试题

摘要:
健康检测、外部配置等5.根本没有代码生成或xml配置文件。2.什么是常用的SpringBoot启动器?Spring boot starter data jpa,使用SpringAOP和AspectJ进行面向方面编程的发起者:Spring boot starter security,用于将JDBC与HikariCP连接池一起使用:

1、列举一些SpringBoot特性

  • 1、创建独立的Spring项目
  • 2、内置Tomcat和Jetty容器
  • 3、提供一个starter POMs来简化Maven配置
  • 4、提供了一系列大型项目中常见的非功能性特性,如安全、指标,健康检测、外部配置等
  • 5、完全没有代码生成和xml配置文件

2、有什么常用的Spring Boot启动器?
spring-boot-starter: 核心启动器,包括自动配置支持,日志记录和YAML
spring-boot-starter-aop: 使用Spring AOP和AspectJ进行面向方面编程的启动器
spring-boot-starter-data-jpa: 使用Spring Data JPA和Hibernate的启动器
spring-boot-starter-jdbc: 用于将JDBC与HikariCP连接池一起使用的启动器
spring-boot-starter-security: 使用Spring Security的启动器
spring-boot-starter-test: 用于测试Spring Boot应用程序的启动器
spring-boot-starter-web: 用于构建Web的入门者,包括使用Spring MVC的RESTful应用程序

3、application.properties中如何引用已定义的配置参数?
使用${},比如:
book.name = XXX
book.desc = ${book.name} 's desc

4、spring boot Devtools有什么作用?
https://blog.csdn.net/isea533/article/details/70495714

5、Spring Boot Actuator有什么作用?
监控和管理Spring Boot应用,比如Mappring、健康检查、审计、统计和HTTP追踪等。所有的这些特性可以通过JMX或者HTTP endpoints来获得。

6、RequestMapping 和 GetMapping 的不同之处在哪里?
RequestMapping 具有类属性的,可以进行 GET,POST,PUT 或者其它的注释中具有的请求方法。
GetMapping 是 GET 请求方法中的一个特例。它只是 ResquestMapping 的一个延伸,目的是为了提高清晰度。

7、@ConfigurationProperties 注解的作用
将配置属性注入到bean
类似如下:
@Component
@ConfigurationProperties(prefix = "person")
public class Person {

private String firstName;

}

application.properties属性:
person.firstName = XXX

8、@value和@configurationproperties的区别
https://www.cnblogs.com/slowcity/p/9097969.html

9、Spring Boot 如何定义多套不同环境配置?
提供多套配置文件,如:

applcation.properties
application-dev.properties
application-test.properties
application-prod.properties
祥见:https://mp.weixin.qq.com/s/K0kdQwoo2t5FDsTUJttSAA

10、@responsebody有什么作用?
@responsebody后返回结果不会被解析为跳转路径,而是直接写入HTTP response body中。比如异步获取json数据,加上@responsebody后,会直接返回json数据。该注解一般会配合@RequestMapping一起使用。

11、@Controller 和 @RestController有什么区别?
@RestController 是Spring4之后加入的注解,原来在@Controller中返回json需要@ResponseBody来配合,如果直接用@RestController替代@Controller就不需要再配置@ResponseBody,默认返回json格式。而@Controller是用来创建处理http请求的对象,一般结合@RequestMapping使用。


12、@Component和@Bean有什么区别? (答案还不是特别确信)
@Component被用在要被自动扫描和装配的类上。@Component类中使用方法或字段时不会使用CGLIB增强(及不使用代理类:调用任何方法,使用任何变量,拿到的是原始对象)Spring 注解@Component等效于@Service,@Controller,@Repository
@Bean主要被用在方法上,来显式声明要用生成的类;用@Configuration注解该类,用@Bean标注方法等价于XML中配置bean。

现在项目上,本工程中的类,一般都使用@Component来生成bean。在把通过web service取得的类,生成Bean时,使用@Bean和getter方法来生成bean


13、有什么springboot的安全方面的实践?

https://mp.weixin.qq.com/s/HG4_StZyNCoWx02mUVCs1g

14、如何使用@Async?
现在启动类@SpringBootApplication后面加入@EnableAsync,定义@Component类中的异步任务方法,其中注解@Async,方法返回void或者Future<T>,调用方法即平常的@Autowired实例化即可。

15、springboot如何开启定时任务?
定义启动类@EnableScheduling,然后在任务类使用cron表达式来定义任务时间,比如@Scheduled(cron="/6 * * * * ?")代表每6秒一次,再如:“0 0 12 * * ?” 每天中午12点触发。

免责声明:文章转载自《Spring Boot 面试题》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇npm 升降级JAVA写接口傻瓜(?)教程(一)下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

【代码笔记】iOS-多张图片合成一张

代码:   RootViewController.m   #import "RootViewController.h" @interface RootViewController () @end @implementation RootViewController - (id)initWithNibName:(NSString...

Spring Security踩坑记录(静态资源放行异常)

转自:https://blog.csdn.net/qq_34204490/article/details/110005404 Springboot + Spring-Security的踩坑记录 问题描述:今天使用springboot整合springsecurity,出现静态资源404的状态 解决: 1.首先尝试使用网上的方法继承 WebSecurityCo...

jQuery.ajax() datatype:“json" 转换失败

当使用jQuery.ajax() 时,如果设置dataType:"json",如果返回的字符转换出错则不会调用success方法,而进入error方法,控制台中也不会出现错误信息 如果没有定义error方法,则$.ajax()会默默的结束。 为了避免这种现象出现:   1.写$.ajax()时定义error方法,对错误进行处理。   2.服务器端生成jso...

weex-iOS集成

weex-iOS集成 weex只是刚刚起步,还存在一些bug,有些功能还有待完善和提高.但是其使用起来还是可以节省些时间. 这里我们说说如何把weex集成到我们的iOS项目中 1. 下载weex源代码 git clone https://github.com/alibaba/weex.git 2. 把根目录下的/ios/sdk整个目录拷贝到项目中...

C#基础系列——多线程 信号量 异步 编程 Task Thread async和await

 多线程: ThreadStart 是一个委托函数 static void Main(string[] args) { Thread oGetArgThread = new Thread(new ThreadStart(() => {...

解决cocos2dx在VS2012中文版环境下不支持中文的问题

  首先要明确的一点是:cocos2dx是支持中文的。因为其编码格式为UTF-8(无签名)——这只是我在网上找到的结论,并非从官方获取,因此不能十分确定,不过应该无误。   那么,为什么在VS2012环境下,cocos2dx不能正确显示中文呢?   这是因为二者编码格式不一致。VS2012中文版的默认编码格式为GB2312-80(我不确定英文版的格式如何,...