Giter Site home page Giter Site logo

kono's Introduction

手把手从零打造自己的Spring Boot脚手架(施工中)

建议按照day01、day02这样的次序渐进式学习,配合文章更佳。

相关记录在我个人博客 码农小胖哥的博客:https://www.felord.cn/

请多多关注公众号:码农小胖哥

环境依赖

  • Java环境:Java 8
  • 编译环境:Maven
  • 版本管理:Git

技术栈

Spring Boot 2.3.x.RELEASE 为基础,涉及的框架和中间件有:

  • springboot 基础整合框架
  • servlet4 web 标准
  • undertow 或者tomcat web 容器
  • spring cache 缓存抽象层
  • spring security 安全框架
  • json web token 安全框架token技术
  • mybatis plus 3 ORM增强
  • redis 缓存中间件
  • mysql 数据库
  • Minio 对象存储服务
  • mapstruct bean转换器,编译期使用
  • lombok bean简化工具
  • swagger2 文档(开发测试)
  • docker 容器技术

系列文章

Docker

Mysql:

docker run --name mysql-service -v d:/mysql/data:/var/lib/mysql -p 3306:3306 -e TZ=Asia/Shanghai -e MYSQL_ROOT_PASSWORD=123456 -d mysql:5.7 --character-set-server=utf8mb4 --collation-server=utf8mb4_unicode_ci --default-time_zone="+8:00"

Redis AOF:

docker run -d --privileged=true -p 6379:6379  -v d:/redis/data:/data --name redis-service redis:4.0.13 redis-server --appendonly yes

Minio :

docker run --name oss-service -d  -p 9000:9000  -e "MINIO_ACCESS_KEY=minio_access_key"  -e "MINIO_SECRET_KEY=felord_cn_sec_key"   minio/minio  server /data

Elasticsearch:

docker run --name es-service -p 9200:9200 -p 9300:9300 -e "discovery.type=single-node" -e ES_JAVA_OPTS="-Xms64m -Xmx128m"    -d elasticsearch

CHANGELOG

变更日志

day01

Git分支 day01

  1. 项目结构构建
  2. 集成 统一返回体统一异常处理快速类型转换参数校验 能力

day02

Git分支 day02

  1. 集成Mybatis

day03

Git分支 day03

  1. 手动实现Mybatis通用Mapper,实验性,不会合并到主分支

day04

Git分支 day04

  1. 整合Mybatis Plus以及代码生成器

day05

Git分支 day05

  1. 整合Redis作为缓存,使用Spring Cache作为缓存抽象层
  2. 对Redis的一些配置进行个性化,包括JSON序列化、Java 8 时间支持、缓存TTL过期个性化

day06

Git分支 day06

自定义了OSS相关的操作的Spring Boot Starter以组件化这些基础功能,地址 oss-spring-boot,使用方法参考文章或者README.md

需要mvn install自行安装到你本地的Maven仓库或者远程Maven仓库。

kono's People

Contributors

notfound403 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.