Java面试题-springboot

目录

@、什么是springboot 

@、Spring Boot有哪些优点? 

@、如何重新加载Spring Boot上的更改,而无需重新启动服务器? 

@、springboot 注解

@、Spring Boot中的监视器是什么? 

@、什么是YAML? 

@、如何集成Spring Boot和ActiveMQ? 

@、springboot常用的starter有哪些 ?

@、springboot自动配置的原理 ?

@、springboot读取配置文件的方式 ?

@、springboot集成mybatis的过程 ?

@、SpringBoot项目如何进行打包部署?


@、什么是springboot 

用来简化spring应用的初始搭建以及开发过程 使用特定的方式来进行配置(properties或yml文件) 

创建独立的spring引用程序 main方法运行 

嵌入Tomcat 无需部署war文件 

简化maven配置 

自动配置spring添加对应功能starter自动化配置 

答:spring boot来简化spring应用开发,约定大于配置,去繁从简,just run就能创建一个独立的,产品级别的应用

@、Spring Boot有哪些优点? 

答:

-快速创建独立运行的spring项目与主流框架集成 

-使用嵌入式的servlet容器,应用无需打包成war包 

-starters自动依赖与版本控制 

-大量的自动配置,简化开发,也可修改默认值 

-准生产环境的运行应用监控 

-与云计算的天然集成

@、如何重新加载Spring Boot上的更改,而无需重新启动服务器? 

这可以使用DEV工具来实现。通过这种依赖关系,您可以节省任何更改,嵌入式tomcat将重新启动。 

Spring Boot有一个开发工具(DevTools)模块,它有助于提高开发人员的生产力。Java开发人员面临的一个主要挑战是将文件更改自动部署到服务器并自动重启服务器。 

开发人员可以重新加载Spring Boot上的更改,而无需重新启动服务器。这将消除每次手动部署更改的需要。Spring Boot在发布它的第一个版本时没有这个功能。 

这是开发人员最需要的功能。DevTools模块完全满足开发人员的需求。该模块将在生产环境中被禁用。它还提供H2数据库控制台以更好地测试应用程序。 

org.springframework.boot 

spring-boot-devtools 

true

@、springboot 注解

第一层注解@RestController相当于@Controller +@ResponseBody。

@Controller

@RequestMapping("/api/status")

public class HealthController {

第三层注解:@ResponseBody和@RequestBody

@Autowired

private DataSource dataSource;

@Value("${druid.url}")

private String url;

@Service("sysGeneratorService")

public class SysGeneratorServiceImpl implements SysGeneratorService {

@Mapper

public interface SysGeneratorDao {

@、Spring Boot中的监视器是什么? 

Spring boot actuator是spring启动框架中的重要功能之一。Spring boot监视器可帮助您访问生产环境中正在运行的应用程序的当前状态。 

有几个指标必须在生产环境中进行检查和监控。即使一些外部应用程序可能正在使用这些服务来向相关人员触发警报消息。监视器模块公开了一组可直接作为HTTP URL访问的REST端点来检查状态。

@、什么是YAML? 

YAML是一种人类可读的数据序列化语言。它通常用于配置文件。 

与属性文件相比,如果我们想要在配置文件中添加复杂的属性,YAML文件就更加结构化,而且更少混淆。可以看出YAML具有分层配置数据。

@、如何集成Spring Boot和ActiveMQ? 

对于集成Spring Boot和ActiveMQ,我们使用spring-boot-starter-activemq依赖关系。 它只需要很少的配置,并且不需要样板代码。

@、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

@、springboot自动配置的原理 ?

在spring程序main方法中 添加@SpringBootApplication或者@EnableAutoConfiguration 

会自动去maven中读取每个starter中的spring.factories文件 该文件里配置了所有需要被创建spring容器中的bean

@、springboot读取配置文件的方式 ?

springboot默认读取配置文件为application.properties或者是application.yml

@、springboot集成mybatis的过程 ?

添加mybatis的starter maven依赖 

org.mybatis.spring.boot 

mybatis-spring-boot-starter 

在mybatis的接口中 添加@Mapper注解 

在application.yml配置数据源信息

@、SpringBoot项目如何进行打包部署?

springboot的打包方式有很多种。有打成war的,有打成jar的,也有直接提交到github,通过jekins进行打包部署的。这里主要介绍如何打成jar进行部署。不推荐用war,因为springboot适合前后端分离,打成jar进行部署更合适。

首先需要在application.properties当中配置端口

server.port=8080 # http://localhost:8088/swagger-ui.html

marven的配置文件

java -jar test.jar >temp.txt //这种方法会把日志文件输入到你指定的文件中,没有则会自动创建。进程会在后台运行。

发布了297 篇原创文章 · 获赞 181 · 访问量 11万+

猜你喜欢

转载自blog.csdn.net/libusi001/article/details/105547597
今日推荐