spring-boot-notes 用于记录学习、使用 Spring Boot 框架。
主要内容是 Spring Boot 框架的一些特性、小功能的实现、常用框架的整合等。
Spring Boot版本:2.X
JDK版本:8
开发工具:IntelliJ IDEA
代码风格:google-java-format
Spring Boot的一些使用。
- hello-world:一个简单Spring Boot的HelloWorld示例
- devtools:热部署插件整合示例
- package image:构建部署镜像示例
- package war:构建war格式部署包示例
- package zip:构建zip格式部署包示例,zip包中包含jar和各个环境配置文件
Spring Boot的一些特性。
- aop:面向切面编程
- aspect:面向切面
- filter:过滤器
- interceptor:拦截器
- async:异步调用
- auto-configuration:自动配置
- bean-validation:Bean数据验证(常用注解、校验模式配置、国际化、自定义验证器)
- event-listener:事件监听
- externalized-configuration:外部化配置
- i18n:国际化消息提示
- logging:日志
- logging-logback:整合logback
- logging-log4j2:整合log4j2
- scheduling:定时任务调度
- spring-task:基于spring task实现定时任务调度
- quartz-scheduler:基于quartz实现定时任务调度
- sending-email:发送邮件
- testing:测试
一些整合的spring boot starter。
- kaptcha-spring-boot-starter:整合kaptcha
- okhttp-spring-boot-starter:整合okhttp
一些常用框架的集成。
- rabbitmq:一套开源(MPL)的消息队列服务软件
- rabbitmq-consumer-demo:rabbitmq消费者示例
- rabbitmq-provider-demo:rabbitmq生产者示例
- redis:一个开源的使用ANSI C语言编写、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库
- mongo:一个基于分布式文件存储的数据库
- zookeeper:一个分布式的,开放源码的分布式应用程序协调服务
一些常用功能框架的使用示例。
- apache-poi:一个 Java 实现的操作 Microsoft Office格式文档的工具库
- browscap-java:用于解析useragent头,以提取有关使用的浏览器、浏览器版本、平台、平台版本和设备类型的信息
- Caffeine:一个基于Java8开发的提供了近乎最佳命中率的高性能的缓存库
- flyway:一个开源数据库迁移工具
- google-zxing:Google开源的多维码生成工具
- h2database:一个开源的嵌入式(非嵌入式设备)数据库引擎
- ip2region:离线IP地址定位库
- jasypt:Jasypt是一个java库,它允许开发人员以最小的工作量将基本的加密功能添加到他/她的项目中,而无需深入了解加密的工作原理。
- jjwt:用于在JVM和Android上创建和验证JSON Web Token(JWT)
- jsch:SSH2的一个纯Java实现
- oshi-core:Java的免费基于JNA的(本机)操作系统和硬件信息库,跨平台查看服务器信息
- p6spy:记录任何Java应用程序的所有JDBC事务
- resilience4j:Resilience4j是一个轻量级、易于使用的容错库,其灵感来自Netflix Hystrix,但专为Java 8和函数式编程设计。
- springdoc-openapi:一个开源的 API doc 框架,可以将 Controller 的方法以文档的形式展现
- springfox-swagger:一个开源的 API doc 框架,可以将 Controller 的方法以文档的形式展现
- UserAgentUtils:实时解析HTTP请求或分析日志文件并收集有关用户代理的信息