springboot基础

singlemouse 发布于 28 天前 62 次阅读


内容纲要

Spring Boot介绍

Spring Boot是由Pivotal团队提供的基于Spring的全新框架,旨在简化Spring应用的初始搭建和开发过程。
Spring Boot是所有基于Spring开发项目的起点
Spring Boot就是尽可能地简化应用开发的门槛,让应用开发、测试、部署变得更加简单。

遵循“约定优于配置”的原则,只需要很少的配置或使用默认的配置。
能够使用内嵌的Tomcat、Jetty服务器,不需要部署war文件。
提供定制化的启动器Starters,简化Maven配置,开箱即用。
纯Java配置,没有代码生成,也不需要XML配置。
提供了生产级的服务监控方案,如安全监控、应用监控、健康检测等

web入门

controller层

@RestController
public class HelloController {
    // http://localhost/xxxx
    @GetMapping("/hello") //等效于/xxxx
    public String hello(){
        return "Hello World111";
    }
}
Controller的用法

示例中返回了hello页面和name的数据,在前端页面中可以通过${name}参数获取后台返回的数据并显示。
@Controller通常与Thymeleaf模板引擎结合使用。

RestController的用法

默认情况下,@RestController注解会将返回的对象数据转换为JSON格式。

路由映射

@RequestMapping注解主要负责URL的路由映射。它可以添加在Controler类或者具体的方法上。
如果添加在Controler类上,则这个Controller中的所有路由映射都将会加上此映射规则,如果添加在方法上,则只对当前方法生效。
@RequestMapping注解包含很多属性参数来定义HTTP的请求映射规则。常用的属性参数如下:
value:请求URL的路径,支持URL模板、正则表达式
method: HTTP请求方法
consumes:请求的媒体类型
(Content-Type),如application/json
produces: 响应的媒体类型
params,headers:请求的参数及请求头的值

Method匹配

控制器

Spring Boot提供了@Controller和@RestController两种注解来标识此类负责接收和处理HTTP请求。
如果请求的是页面和数据,使用@Controller注解即可;如果只是请求数据则可以使用@RestController注解。

开发环境热部署

在实际的项目开发调试过程中会频繁地修改后台类文件,导致需要重新编译、重新启动,整个过程非常麻烦,影响开发效率。
Spring Boot提供了spring-boot-devtools组件,使得无须手动重启SpringBoot应用即可重新编译、启动项目,大大缩短编译启动的时间。
devtools会监听classpath下的文件变动,触发Restart类加载器重新加载该类从而实现类文件和属性文件的热部署。
并不是所有的更改都需要重启应用(如静态资源、视图模板),可以通过设置spring.devtools.restart.exclude属性来指定一些文件或目录的修改不用重启应用

此作者没有提供个人介绍
最后更新于 2024-12-21