国内f型网页布局的网站,如何做网站图片切换,网站开发需要用例图吗,丽水企业网站开发企业1.Spring Boot是什么#xff1f;
Spring Boot 是 Spring 开源组织下的子项目#xff0c;是 Spring 组件一站式解决方案#xff0c;主要是简化了使用 Spring 的难度#xff0c;简省了繁重的配置#xff0c;提供了各种启动器#xff0c;开发者能快速上手。
2.为什么要用 …1.Spring Boot是什么
Spring Boot 是 Spring 开源组织下的子项目是 Spring 组件一站式解决方案主要是简化了使用 Spring 的难度简省了繁重的配置提供了各种启动器开发者能快速上手。
2.为什么要用 Spring Boot
快速开发快速整合第三方框架Maven依赖关系Maven继承简化XML的配置内置嵌入HTTP服务器Tomcat默认、Jetty降低了对环境的要求
3.优点
容易上手提升开发效率为 Spring 开发提供一个更快、更简单的开发框架远离繁琐的配置提供了一系列大型项目通用的非业务性功能例如内嵌服务器、安全管理、运行数据监控、运行状况检查和外部化配置等SpringBoot总结就是使编码变简单、配置变简单、部署变简单、监控变简单等等
4.缺点
Spring Boot 仅适用于全新 Spring 项目。将一个传统 Spring Framework 项目转换为 Spring Boot 应用程序是一个非常困难和耗时的过程集成度较高使用过程中不太容易了解底层(新人面试的时候都不会偏向于底层的东西比如说 Spring MVC。建议在学习 Spring Boot 的时候先去学习一下 Spring MVC)
5.Spring 和 Spring Boot 的不同
Spring Boot 本质上是 Spring 框架的延伸和扩展它的诞生是为了简化 Spring框架初始搭建以及开发的过程使用它可以不再依赖 Spring 应用程序中的 XML 配置为更快、更高效的开发 Spring提供更加有力的支持。 更快速的构建能力Spring Boot 提供了更多的 Starters 用于快速构建业务框架Starters 可以理解为启动器它包含了一系列可以集成到应用里面的依赖包你可以一站式集成 Spring 及其他技术而不需要到处找依赖包起步依赖在创建 Spring Boot 时可以直接勾选依赖模块这样在项目初始化时就会把相关依赖直接添加到项目中大大缩短了查询并添加依赖的时间内嵌容器支持Spring Boot 内嵌了 Tomcat、Jetty、Undertow 三种容器其默认嵌入的容器是 TomcatActuator 监控可以监控应用程序的运行状况或者内存、线程池、Http 请求统计等
6.SpringBootApplication 引入了哪 3 个重要的注解
核心注解是 SpringBootApplication它主要由SpringBootConfigurationEnableAutoConfiguration和ComponentScan这三个构成
SpringBootConfiguration 里面就只有一个 Configuration 主要注解也就是把该类变成一个配置类所以SpringBootConfiguration 就相当于 ConfigurationEnableAutoConfiguration 是由 AutoConfigurationPackage和Import(EnableAutoConfigurationImportSelector.class) 这两个组成的AutoConfigurationPackage 是自动配置包包括了一个 Import注解给容器导入了自动配置包的注册器AutoConfigurationPackages.Registrar.class将主启动类的所在包及包下面所有子包里面的所有组件扫描到Spring 容器ComponentScan扫描包该注解默认会扫描该类所在的包下所有的配置类
7.Spring Boot 的配置文件有哪几种格式它们有什么区别
主要有.properties 和 .yml .yml 格式不支持 PropertySource 注解导入配置
8.你如何理解 Spring Boot 中的 Starters
个人理解 Spring Boot 就是由各种 Starter 组合起来的我们自己也可以开发Starter。
当一个项目变得相当复杂管理依赖会成为一个噩梦因为当中涉及太多 artifacts 了。
这时候 SpringBoot starter 就派上用处了。其他所需的依赖以一致的方式注入并且被管理。
所有的 starter 都归于 org.springframework.boot 组中并且它们都以由 spring-boot-starter- 开头取名。这种命名方式使得我们更容易找到 starter 依赖特别是当我们使用那些支持通过名字查找依赖的 IDE 当中。
SpringBoot 提供了非常多的 starter 其中最常用的是
spring-boot-starter核心 starter包括自动化配置支持日志以及 YAMLspring-boot-starter-aopSpring AOP 和 AspectJ 相关的切面编程 starterspring-boot-starter-data-jpa使用 Hibernate Spring Data JPA 的 starterspring-boot-starter-jdbc使用 HikariCP 连接池 JDBC 的 starterspring-boot-starter-security使用 Spring Security 的 starterspring-boot-starter-testSpringBoot 测试相关的 starterspring-boot-starter-web构建 restful、springMVC 的 web应用程序的 starter
9.Spring Boot 可以兼容老 Spring 项目吗如何做
使用 ImportResource 注解导入老 Spring 项目配置文件
10.Spring Boot 中读取配置的方式有哪些
注入Environment对象通过Environment 的 getProperty() 方法读取指定配置 Key 的内容 使用Value注解实现单个配置的注入 使用ConfigurationProperties注解实现一组配置的注入
11.SpringBoot 实现热部署有哪几种方式
主要有两种方式
Spring LoadedSpring-boot-devtools
12.Spring Boot 是否可以使用 XML 配置 ?
Spring Boot 推荐使用 Java 配置而非 XML 配置但是 Spring Boot 中也可以使用 XML 配置通过ImportResource 注解可以引入一个 XML 配置
13、如何实现 Spring Boot 应用程序的安全性
为了实现Spring Boot的安全性我们使用 spring-boot-starter-security依赖项并且必须添加安全配置。它只需要很少的代码。配置类将必须扩展WebSecurityConfigurerAdapter并覆盖其方法
14、运行 Spring Boot 有哪几种方式
打包用命令或者放到容器中运行用 Maven/ Gradle 插件运行直接执行 main 方法运行
15.开启 Spring Boot 特性有哪几种方式 继承spring-boot-starter-parent项目 parentgroupIdorg.springframework.boot/groupIdartifactIdspring-boot-starter-parent/artifactIdversion2.6.2/versionrelativePath/ !-- lookup parent from repository --/parent导入spring-boot-dependencies项目依赖 parentgroupIdorg.springframework.boot/groupIdartifactIdspring-boot-dependencies/artifactIdversion2.6.2/version/parent16.Spring Boot 支持哪些日志框架推荐和默认的日志框架是哪一个
Spring Boot 支持 Logging、Log4j2、Lockback 做为日志框架若是你使用 Starters 启动器Spring Boot 将使用 Logback 做为默认日志框架
17、Spring Initializr 是创建 Spring Boot 的唯一方法
Spring Initiatlizr 让创建 Spring Boot 项目变的很容易但是也可以通过设置一个 maven 项目并添加正确的依赖项来开始一个项目
创建方式有两种
第一种:start.spring.io 方式创建第二种在项目的标题为 “Basic Web Application” 处进行手动设置
18.Spring Boot 约定优于配置的体现是什么
Maven的目录结构
默认有 resources 文件夹存放配置文件默认打包方式为jar默认的配置文件application.properties 或 application.yml 文件默认通过 spring.profiles.active 属性来决定运行环境时的配置文件EnableAutoConfiguration 默认对于依赖的 starter 进行自动装载spring-boot-start-web 中默认包含 spring-mvc 相关依赖以及内置的 tomcat 容器使得构建一个 web应用更加简单
19、内置容器的启动流程是什么
启动一个 Spring Boot项目首先运行 Application 启动类的 main 方法main 方法中调用了 SpringApplication.run 方法run 方法中又调用了最核心的 refreshContext 方法这里面又调用了我们最熟悉了 spring 容器启动模板方法refresh 方法默认 Spring Boot 会启动 Tomcat在 refresh 中的 onRefresh() 中执行onRefresh 调用了 createWebServer() 方法通过TomcatServletWebServerFactory 开始创建 Tomcat 实例最后在 refresh 方法中的 finishRefresh() 中调用 Tomcat 实例的 start 逻辑并将应用上下文发布的 webServer 中至此完成 Tomcat 的启动
20、你如何理解 Spring Boot 配置加载顺序
Spring Boot 配置加载顺序优先级是:propertiese文件、YAML文件、系统环境变量、命令行参数。
21、application.properties 和 bootstrap.properties 有何区别 ?
bootstrap 比 applicaton 优先加载配置在应用程序上下文的引导阶段生效, 而且 boostrap 里面的属性不能被覆盖application 用于 Spring Boot 项目的自动化配置
22、Spring Boot 中的监视器是什么
Spring boot actuator 是 spring 启动框架中的重要功能之一Spring boot 监视器可以访问生产环境中正在运行的应用程序的当前状态。监视器模块公开了一组可直接作为 HTTP URL 访问的 REST 端点来检查状态
23、如何使用 Spring Boot 实现异常处理
Spring 通过使用 ControllerAdvice 注解处理异常实现一个ControllerAdvice 类来处理控制器类抛出的所有异常
24、YAML在springboot中的作用
使得 Spring Boot 配置文件更加有层次感结构也比较清晰不容易混淆目前也是人类可读的数据序列化语言
25.Spring Boot 中如何实现定时任务 ?
在 Spring Boot 中使用定时任务主要有两种不同的方式一个就是使用 Spring 中的 Scheduled 注解另一个则是使用第三方框架 Quartz。
使用 Spring 中的 Scheduled 的方式主要通过 Scheduled 注解来实现。
使用 Quartz 则按照 Quartz 的方式定义 Job 和 Trigger 即可
26.Spring Boot 自动配置的原理
SpringBoot启动的时候加载主配置类开启了自动配置功能EnableAutoConfiguration查看EnableAutoConfiguration其作用是利用AutoConfigurationImportSelector给容器中导入一些组件查看AutoConfigurationImportSelector其中public String[] selectImports(AnnotationMetadata annotationMetadata)方法内最终调用getCandidateConfigurations()方法查看 getCandidateConfigurations(AnnotationMetadata metadata,AnnotationAttributes attributes)获取候选的配置这个是扫描所有jar包类路径下META-INF/spring.factories然后把扫描到的这些文件包装成Properties对象从properties中获取到EnableAutoConfiguration.class类名对应的值然后把他们添加在容器中
整个过程就是将类路径下 “META-INF/spring.factories” 里面配置的所有 EnableAutoConfiguration 的值加入到容器中
27.SpringBoot核心配置文件是什么
bootstrap.properties 和 application.properties
28.Spring Boot 打成的 jar 和普通的 jar 有什么区别
Spring Boot 打成jar包可以直接通过 java -jar *.jar 启动项目但是不能够像普通 jar 包一样被其他项目引用。普通 jar 解压后就是包名可以直接引用内部的类而 Spring Boot 解压后 BOOT/classes 目录下才是真正的代码因此不能被直接引用如果需要被引用可以配置 pom将 SpringBoot 打包成两个 jar 包一个可执行一个可引用
29.SpringBoot 常用注解 SpringBootApplication: 它 封 装 了 核 心 的SpringBootConfigurationEnableAutoConfiguration ComponentScan 这三个类,大大节省了程序员配置时间,这就是 SpringBoot 的核心设计思想. EnableScheduling 是通过Import 将 Spring 调度框架相关的bean 定义都加载到IoC 容器 MapperScan:spring-boot支持mybatis组件的一个注解通过此注解指定mybatis接口类的路径即可完成对 mybatis 接口的扫描 RestController 是 Controller 和 ResponseBody 的 结合, 一个类被加上RestController 注解,数据接口中就不再需要添加ResponseBody,更加简洁。 RequestMapping,我们都需要明确请求的路径. GetMappping,PostMapping, PutMapping, DeleteMapping 结合RequestMapping 使用, 是 Rest 风格的, 指定更明确的子路径. PathVariable路径变量注解用{}来定义 url 部分的变量名. Service 这个注解用来标记业务层的组件我们会将业务逻辑处理的类都会加上这个注解交给 spring 容器。事务的切面也会配置在这一层。当让 这个注解不是一定要用。有个泛指组件的注解当我们不能确定具体作用的时候 可以用泛指组件的注解托付给spring 容器 Component 和 spring 的注解功能一样, 注入到 IOC 容器中 ControllerAdvice 和 ExceptionHandler 配合完成统一异常拦截处理. 文章转载自: http://www.morning.lxfqc.cn.gov.cn.lxfqc.cn http://www.morning.kdrly.cn.gov.cn.kdrly.cn http://www.morning.csnmd.cn.gov.cn.csnmd.cn http://www.morning.rhgtc.cn.gov.cn.rhgtc.cn http://www.morning.bzwxr.cn.gov.cn.bzwxr.cn http://www.morning.nbhft.cn.gov.cn.nbhft.cn http://www.morning.gthwz.cn.gov.cn.gthwz.cn http://www.morning.rwfp.cn.gov.cn.rwfp.cn http://www.morning.lwtfr.cn.gov.cn.lwtfr.cn http://www.morning.fbdtd.cn.gov.cn.fbdtd.cn http://www.morning.tdhxp.cn.gov.cn.tdhxp.cn http://www.morning.fbtgp.cn.gov.cn.fbtgp.cn http://www.morning.qfwzm.cn.gov.cn.qfwzm.cn http://www.morning.nrlsg.cn.gov.cn.nrlsg.cn http://www.morning.yqzyp.cn.gov.cn.yqzyp.cn http://www.morning.lywcd.cn.gov.cn.lywcd.cn http://www.morning.xhfky.cn.gov.cn.xhfky.cn http://www.morning.nkbfc.cn.gov.cn.nkbfc.cn http://www.morning.tpps.cn.gov.cn.tpps.cn http://www.morning.tsdjj.cn.gov.cn.tsdjj.cn http://www.morning.qkgwx.cn.gov.cn.qkgwx.cn http://www.morning.lmrcq.cn.gov.cn.lmrcq.cn http://www.morning.rdqzl.cn.gov.cn.rdqzl.cn http://www.morning.tfpbm.cn.gov.cn.tfpbm.cn http://www.morning.ybgpk.cn.gov.cn.ybgpk.cn http://www.morning.kmcfw.cn.gov.cn.kmcfw.cn http://www.morning.rrbhy.cn.gov.cn.rrbhy.cn http://www.morning.chrbp.cn.gov.cn.chrbp.cn http://www.morning.pjjkz.cn.gov.cn.pjjkz.cn http://www.morning.swbhq.cn.gov.cn.swbhq.cn http://www.morning.ywqw.cn.gov.cn.ywqw.cn http://www.morning.rpwm.cn.gov.cn.rpwm.cn http://www.morning.kzhgy.cn.gov.cn.kzhgy.cn http://www.morning.jfjqs.cn.gov.cn.jfjqs.cn http://www.morning.tdnbw.cn.gov.cn.tdnbw.cn http://www.morning.jljiangyan.com.gov.cn.jljiangyan.com http://www.morning.mzjbz.cn.gov.cn.mzjbz.cn http://www.morning.fcqlt.cn.gov.cn.fcqlt.cn http://www.morning.btlsb.cn.gov.cn.btlsb.cn http://www.morning.trnhy.cn.gov.cn.trnhy.cn http://www.morning.plnry.cn.gov.cn.plnry.cn http://www.morning.qqhfc.cn.gov.cn.qqhfc.cn http://www.morning.nmngg.cn.gov.cn.nmngg.cn http://www.morning.wkwds.cn.gov.cn.wkwds.cn http://www.morning.qghjc.cn.gov.cn.qghjc.cn http://www.morning.pfkrw.cn.gov.cn.pfkrw.cn http://www.morning.pdwny.cn.gov.cn.pdwny.cn http://www.morning.xbtlt.cn.gov.cn.xbtlt.cn http://www.morning.qgzmz.cn.gov.cn.qgzmz.cn http://www.morning.mfsxd.cn.gov.cn.mfsxd.cn http://www.morning.rcqyk.cn.gov.cn.rcqyk.cn http://www.morning.gsqw.cn.gov.cn.gsqw.cn http://www.morning.xqkcs.cn.gov.cn.xqkcs.cn http://www.morning.pwrkl.cn.gov.cn.pwrkl.cn http://www.morning.thzwj.cn.gov.cn.thzwj.cn http://www.morning.jmspy.cn.gov.cn.jmspy.cn http://www.morning.mhpmw.cn.gov.cn.mhpmw.cn http://www.morning.gjqnn.cn.gov.cn.gjqnn.cn http://www.morning.twhgn.cn.gov.cn.twhgn.cn http://www.morning.kmldm.cn.gov.cn.kmldm.cn http://www.morning.cyjjp.cn.gov.cn.cyjjp.cn http://www.morning.rwzmz.cn.gov.cn.rwzmz.cn http://www.morning.junyaod.com.gov.cn.junyaod.com http://www.morning.qtsks.cn.gov.cn.qtsks.cn http://www.morning.jopebe.cn.gov.cn.jopebe.cn http://www.morning.dtzsm.cn.gov.cn.dtzsm.cn http://www.morning.lptjt.cn.gov.cn.lptjt.cn http://www.morning.nrddx.com.gov.cn.nrddx.com http://www.morning.bzcjx.cn.gov.cn.bzcjx.cn http://www.morning.jkrrg.cn.gov.cn.jkrrg.cn http://www.morning.dpbgw.cn.gov.cn.dpbgw.cn http://www.morning.sknbb.cn.gov.cn.sknbb.cn http://www.morning.lgqdl.cn.gov.cn.lgqdl.cn http://www.morning.pqktp.cn.gov.cn.pqktp.cn http://www.morning.zmpqt.cn.gov.cn.zmpqt.cn http://www.morning.tqgmd.cn.gov.cn.tqgmd.cn http://www.morning.wqcbr.cn.gov.cn.wqcbr.cn http://www.morning.gcqs.cn.gov.cn.gcqs.cn http://www.morning.rkjz.cn.gov.cn.rkjz.cn http://www.morning.pqnpd.cn.gov.cn.pqnpd.cn