SpringBoot
是一个微框架,快速上手,门槛低
可以创建独立运行的应用不依赖于容器
提供maven极简配置,缺点是会引入很多不需要的包
简化配置,不再用过多的xml
为微服务SpringCloud铺路
使用场景:
有Spring的地方都可以
J2EE/WEB项目
微服务
Spring Boot介绍
Spring Boot 是一个开源框架,它可以简化创建独立的、基于 Spring 的应用程序和服务。使用约定优于配置的方式来减少开发人员的工作量,并提供了强大的自动化配置功能。 Spring Boot 支持多种构建工具,包括 Maven 和 Gradle。
Spring Boot 的主要特点:
快速启动:Spring Boot可以在几秒钟内启动并运行。
自动配置:Spring Boot可以自动配置大部分应用程序所需的组件和库,减少了手动配置的工作。
无代码生成和 XML 配置:Spring Boot 遵循 “约定优于配置” 的原则,减少了手动编写代码和配置文件的工作。
集成多种常用库:Spring Boot 可以轻松集成多种常用库,包括数据库、消息队列、安全等。
生产就绪性:Spring Boot 提供了各种功能,例如 Forwaring、metrics 和健康指示器,以确保应用程序在生产环境中稳定运行
在 Maven 中添加 Spring Boot依赖项:
xml文件中:
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
源码
https://github.com/leechenxiang/imooc-springboot-starter
异步@EnableAsync
使用注解@EnableAsync开启异步,写在Application启动类上
@Async 标记为异步任务
@EnableScheduling //开启定时任务,自动扫描 写在Application启动类上
@Component //作为组件被容器扫描
@Scheduld中也可以使用cron表达式
@Scheduld(cron = "4-40 * * * * ?")
cron.qqe2.com
@JsonIgnore // 此属性不返回
@JsonFromat(pattern="yyyy-MM-dd hh:mm:ss a", locale="zh",timezone="GMT+8") //格式化
@JsonInclude(Include.NON_NULL) //如果此属性为空则不返回
Spring Boot笔记
重要性:
微框架。
可以快速的上手,整合了一些子项目。
很少的配置。
特点:
基于Spring,使开发者快速入门,门槛很低。
springBoot可以独立运行的运用,不用依赖于容器。
不需要打包,直接可以在服务器中使用。
提供了maven配置,缺点就是引入一些你不用的包。
可视化
简化配置,不要看过多的xml配置
为微服务铺路,比如dubbo
使用场景:
有Spring的地方都可以
j2EE/web项目
微服务
热处理代码
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>制作我的第一个网页</title>
<h1>hello world</h1>
</head>
<body>
</body>
</html>
<!DOCTYPE html><html><head> <meta charset="UTF-8"> <title>制作我的第一个网页</title> <h1>hello world</h1></head><body></body></html>
<!DOCTYPE html><html><head> <meta charset="UTF-8"> <title>制作我的第一个网页</title> <h1>hello world</h1></head><body></body></html>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>制作我的第一个网页</title>
<h1>hello world</h1>
</head>
<body>
</body>
</html>
<h1>你好</h1>
使用devtools来进行热部署,可以在不关闭服务的情况下进行实时更新
https://github.com/abel533/MyBatis-Spring-Boot
https://github.com/leechenxiang/imooc-springboot-starter
缓存
Redis
sprinboot 配置文件
在resources
*.properties
@configuration
@configurationProperties(prefix="com.*") /前缀
@prepertySourec (value ="classpath:") /文件地址
热部署
springboot:
devtools
热部署
springboot:
devtools -jar
热部署
springboot:
devtools -jar
LeeJsonResult
SringMVC
@controller
@requestMapping
@requestMapping
@responseBody
Springboot
@restcontroller :@controller+@responseBody
@requestMapping
@ExceptionHandler统一捕获异常
https://github.com/leechenxiang/imooc-springboot-starter
java class文件
spring-boot-devtools
<optional>true</optional>
页面文件
spring.thymeleaf.cache=false
spring.devtools.restart.enabled=true
spring.devtools.restart.additional-paths=src/main/java
spring.devtools.restart.exclude=static/**,public/**
spring.devtools.restart.exclude=WEB-INF/**
restart.include.mapper=/mapper-[\\w-\\.]+jar
restart.include.pagehelper=/pagehelper-[\\w-\\.]+jar
fasterxml.jackson格式化输出选项
- @JsonIgnore
- @JsonFormat(pattern="yyyy-MM-dd hh:mm:ss a", locale="zh", timezone="GMT+8")
- @JsonInclude(Include.NON_NULL)
springboot定时任务task
应用rediis的jar