<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          介紹一個適合深入學(xué)習(xí)并實(shí)戰(zhàn)的SpringBoot項目

          共 6796字,需瀏覽 14分鐘

           ·

          2020-11-14 21:51

          公眾號關(guān)注?“GitHub今日熱榜
          設(shè)為 “星標(biāo)”,帶你挖掘更多開發(fā)神器!





          網(wǎng)上關(guān)于SpringBoot的學(xué)習(xí)資料很多,但是真正能對SpringBoot底層原理進(jìn)行學(xué)習(xí)并且可以實(shí)戰(zhàn)的資料真的很難找!!!今天就為大家推薦一款GitHub上很多fork很多star的SpringBoot項目,項目名稱為spring-boot-demo




          項目簡介



          spring-boot-demo是一個用來深入學(xué)習(xí)并實(shí)戰(zhàn)SpringBoot的項目,目前總共包含66個集成demo,已經(jīng)完成54個,每個集成demo都有完整的代碼和模塊簡介,并且作者還在不斷更新中。


          該項目已經(jīng)成功集成的demo:


          • actuator(監(jiān)控)

          • admin(可視化監(jiān)控)

          • logback(日志)

          • aopLog(通過AOP記錄web請求日志)

          • 統(tǒng)一異常處理(json級別和頁面級別)

          • freemarker(模板引擎)

          • thymeleaf(模板引擎)

          • Beetl(模板引擎)

          • Enjoy(模板引擎)

          • JdbcTemplate(通用JDBC操作數(shù)據(jù)庫)

          • JPA(強(qiáng)大的ORM框架)

          • mybatis(強(qiáng)大的ORM框架)

          • 通用Mapper(快速操作Mybatis)

          • PageHelper(通用的Mybatis分頁插件)

          • mybatis-plus(快速操作Mybatis)

          • BeetlSQL(強(qiáng)大的ORM框架)

          • upload(本地文件上傳和七牛云文件上傳)

          • redis(緩存)

          • ehcache(緩存)

          • email(發(fā)送各種類型郵件)

          • task(基礎(chǔ)定時任務(wù))

          • quartz(動態(tài)管理定時任務(wù))

          • xxl-job(分布式定時任務(wù))

          • swagger(API接口管理測試)

          • security(基于RBAC的動態(tài)權(quán)限認(rèn)證)

          • SpringSession(Session共享)

          • Zookeeper(結(jié)合AOP實(shí)現(xiàn)分布式鎖)

          • RabbitMQ(消息隊列)

          • Kafka(消息隊列)

          • websocket(服務(wù)端推送監(jiān)控服務(wù)器運(yùn)行信息)

          • socket.io(聊天室)

          • ureport2(中國式報表)

          • 打包成war文件

          • 集成 ElasticSearch(基本操作和高級查詢)

          • Async(異步任務(wù))

          • 集成Dubbo(采用官方的starter)

          • MongoDB(文檔數(shù)據(jù)庫)

          • neo4j(圖數(shù)據(jù)庫)

          • docker(容器化)

          • JPA多數(shù)據(jù)源

          • Mybatis多數(shù)據(jù)源

          • 代碼生成器

          • GrayLog(日志收集)

          • JustAuth(第三方登錄)

          • LDAP(增刪改查)

          • 動態(tài)添加/切換數(shù)據(jù)源

          • 單機(jī)限流(AOP + Guava RateLimiter)

          • 分布式限流(AOP + Redis + Lua)

          • ElasticSearch 7.x(使用官方 Rest High Level Client)

          • HTTPS

          • Flyway(數(shù)據(jù)庫初始化)




          開發(fā)環(huán)境



          • JDK 1.8 +

          • Maven 3.5 +

          • IntelliJ IDEA ULTIMATE 2018.2 + (注意:務(wù)必使用 IDEA 開發(fā),同時保證安裝 lombok 插件)

          • Mysql 5.7 + (盡量保證使用 5.7 版本以上,因為 5.7 版本加了一些新特性,同時不向下兼容。本 demo 里會盡量避免這種不兼容的地方,但還是建議盡量保證 5.7 版本以上)


          各模塊介紹




          Module 名稱Module 介紹
          spring-boot-demo-helloworldspring-boot 的一個 helloworld
          spring-boot-demo-propertiesspring-boot 讀取配置文件中的內(nèi)容
          spring-boot-demo-actuatorspring-boot 集成 spring-boot-starter-actuator 用于監(jiān)控 spring-boot 的啟動和運(yùn)行狀態(tài)
          spring-boot-demo-admin-clientspring-boot 集成 spring-boot-admin 來可視化的監(jiān)控 spring-boot 程序的運(yùn)行狀態(tài),可以與 actuator 互相搭配使用,客戶端示例
          spring-boot-demo-admin-serverspring-boot 集成 spring-boot-admin 來可視化的監(jiān)控 spring-boot 程序的運(yùn)行狀態(tài),可以與 actuator 互相搭配使用,服務(wù)端示例
          spring-boot-demo-logbackspring-boot 集成 logback 日志
          spring-boot-demo-log-aopspring-boot 使用 AOP 切面的方式記錄 web 請求日志
          spring-boot-demo-exception-handlerspring-boot 統(tǒng)一異常處理,包括2種,第一種返回統(tǒng)一的 json 格式,第二種統(tǒng)一跳轉(zhuǎn)到異常頁面
          spring-boot-demo-template-freemarkerspring-boot 集成 Freemarker 模板引擎
          spring-boot-demo-template-thymeleafspring-boot 集成 Thymeleaf 模板引擎
          spring-boot-demo-template-beetlspring-boot 集成 Beetl 模板引擎
          spring-boot-demo-template-enjoyspring-boot 集成 Enjoy 模板引擎
          spring-boot-demo-orm-jdbctemplatespring-boot 集成 Jdbc Template 操作數(shù)據(jù)庫,并簡易封裝通用 Dao 層
          spring-boot-demo-orm-jpaspring-boot 集成 spring-boot-starter-data-jpa 操作數(shù)據(jù)庫
          spring-boot-demo-orm-mybatisspring-boot 集成原生mybatis,使用 mybatis-spring-boot-starter 集成
          spring-boot-demo-orm-mybatis-mapper-pagespring-boot 集成通用MapperPageHelper,使用 mapper-spring-boot-starterpagehelper-spring-boot-starter 集成
          spring-boot-demo-orm-mybatis-plusspring-boot 集成 mybatis-plus,使用 mybatis-plus-boot-starter 集成,集成 BaseMapper、BaseService、ActiveRecord 操作數(shù)據(jù)庫
          spring-boot-demo-orm-beetlsqlspring-boot 集成 beetl-sql,使用 beetl-framework-starter 集成
          spring-boot-demo-uploadspring-boot 文件上傳示例,包含本地文件上傳以及七牛云文件上傳
          spring-boot-demo-cache-redisspring-boot 整合 redis,操作redis中的數(shù)據(jù),并使用redis緩存數(shù)據(jù)
          spring-boot-demo-cache-ehcachespring-boot 整合 ehcache,使用 ehcache 緩存數(shù)據(jù)
          spring-boot-demo-emailspring-boot 整合 email,包括發(fā)送簡單文本郵件、HTML郵件(包括模板HTML郵件)、附件郵件、靜態(tài)資源郵件
          spring-boot-demo-taskspring-boot 快速實(shí)現(xiàn)定時任務(wù)
          spring-boot-demo-task-quartzspring-boot 整合 quartz,并實(shí)現(xiàn)對定時任務(wù)的管理,包括新增定時任務(wù),刪除定時任務(wù),暫停定時任務(wù),恢復(fù)定時任務(wù),修改定時任務(wù)啟動時間,以及定時任務(wù)列表查詢,提供前端頁面
          spring-boot-demo-task-xxl-jobspring-boot 整合xxl-job,并提供繞過 xxl-job-admin 對定時任務(wù)的管理的方法,包括定時任務(wù)列表,觸發(fā)器列表,新增定時任務(wù),刪除定時任務(wù),停止定時任務(wù),啟動定時任務(wù),修改定時任務(wù),手動觸發(fā)定時任務(wù)
          spring-boot-demo-swaggerspring-boot 集成原生的 swagger 用于統(tǒng)一管理、測試 API 接口
          spring-boot-demo-swagger-beautyspring-boot 集成第三方 swagger swagger-bootstrap-ui 美化API文檔樣式,用于統(tǒng)一管理、測試 API 接口
          spring-boot-demo-rbac-securityspring-boot 集成 spring security 完成基于RBAC權(quán)限模型的權(quán)限管理,支持自定義過濾請求,動態(tài)權(quán)限認(rèn)證,使用 JWT 安全認(rèn)證,支持在線人數(shù)統(tǒng)計,手動踢出用戶等操作
          spring-boot-demo-rbac-shirospring-boot 集成 shiro 實(shí)現(xiàn)權(quán)限管理
          待完成
          spring-boot-demo-sessionspring-boot 集成 Spring Session 實(shí)現(xiàn)Session共享、重啟程序Session不失效
          spring-boot-demo-oauthspring-boot 實(shí)現(xiàn) oauth 服務(wù)器功能,實(shí)現(xiàn)授權(quán)碼機(jī)制
          待完成
          spring-boot-demo-socialspring-boot 集成第三方登錄,集成 justauth-spring-boot-starter 實(shí)現(xiàn)QQ登錄、GitHub登錄、微信登錄、谷歌登錄、微軟登錄、小米登錄、企業(yè)微信登錄。
          spring-boot-demo-zookeeperspring-boot 集成 Zookeeper 結(jié)合AOP實(shí)現(xiàn)分布式鎖
          spring-boot-demo-mq-rabbitmqspring-boot 集成 RabbitMQ 實(shí)現(xiàn)基于直接隊列模式、分列模式、主題模式、延遲隊列的消息發(fā)送和接收
          spring-boot-demo-mq-rocketmqspring-boot 集成 RocketMQ,實(shí)現(xiàn)消息的發(fā)送和接收
          待完成
          spring-boot-demo-mq-kafkaspring-boot 集成 kafka,實(shí)現(xiàn)消息的發(fā)送和接收
          spring-boot-demo-websocketspring-boot 集成 websocket,后端主動推送前端服務(wù)器運(yùn)行信息
          spring-boot-demo-websocket-socketiospring-boot 使用 netty-socketio 集成 websocket,實(shí)現(xiàn)一個簡單的聊天室
          spring-boot-demo-ureport2spring-boot 集成 ureport2 實(shí)現(xiàn)復(fù)雜的自定義的中國式報表
          待完成
          spring-boot-demo-uflospring-boot 集成 uflo 快速實(shí)現(xiàn)輕量級流程引擎
          待完成
          spring-boot-demo-urulespring-boot 集成 urule 快速實(shí)現(xiàn)規(guī)則引擎
          待完成
          spring-boot-demo-activitispring-boot 集成 activiti 7 ?流程引擎
          待完成
          spring-boot-demo-asyncspring-boot 使用原生提供的異步任務(wù)支持,實(shí)現(xiàn)異步執(zhí)行任務(wù)
          spring-boot-demo-warspring-boot 打成 war 包的配置
          spring-boot-demo-elasticsearchspring-boot 集成 ElasticSearch,集成 spring-boot-starter-data-elasticsearch 完成對 ElasticSearch 的高級使用技巧,包括創(chuàng)建索引、配置映射、刪除索引、增刪改查基本操作、復(fù)雜查詢、高級查詢、聚合查詢等
          spring-boot-demo-dubbospring-boot 集成 Dubbo,分別為公共模塊 spring-boot-demo-dubbo-common、服務(wù)提供方spring-boot-demo-dubbo-provider、服務(wù)調(diào)用方spring-boot-demo-dubbo-consumer
          spring-boot-demo-mongodbspring-boot 集成 MongoDB,使用官方的 starter 實(shí)現(xiàn)增刪改查
          spring-boot-demo-neo4jspring-boot 集成 Neo4j 圖數(shù)據(jù)庫,實(shí)現(xiàn)一個校園人物關(guān)系網(wǎng)的demo
          spring-boot-demo-dockerspring-boot 容器化
          spring-boot-demo-multi-datasource-jpaspring-boot 使用JPA集成多數(shù)據(jù)源
          spring-boot-demo-multi-datasource-mybatisspring-boot 使用Mybatis集成多數(shù)據(jù)源,使用 Mybatis-Plus 提供的開源解決方案實(shí)現(xiàn)
          spring-boot-demo-sharding-jdbcspring-boot 使用 sharding-jdbc 實(shí)現(xiàn)分庫分表,同時ORM采用 Mybatis-Plus
          spring-boot-demo-tiospring-boot 集成 tio 網(wǎng)絡(luò)編程框架
          待完成
          spring-boot-demo-grpcspring-boot 集成grpc,配置tls/ssl,參見ISSUE#5
          待完成
          spring-boot-demo-codegenspring-boot 集成 velocity 模板技術(shù)實(shí)現(xiàn)的代碼生成器,簡化開發(fā)
          spring-boot-demo-graylogspring-boot 集成 graylog 實(shí)現(xiàn)日志統(tǒng)一收集
          spring-boot-demo-ssospring-boot 集成 SSO 單點(diǎn)登錄,參見 ISSUE#12
          待完成
          spring-boot-demo-ldapspring-boot 集成 LDAP,集成 spring-boot-starter-data-ldap 完成對 Ldap 的基本 CURD操作, 并給出以登錄為實(shí)戰(zhàn)的 API 示例,參見 ISSUE#23,感謝 @fxbin
          spring-boot-demo-dynamic-datasourcespring-boot 動態(tài)添加數(shù)據(jù)源、動態(tài)切換數(shù)據(jù)源
          spring-boot-demo-ratelimit-guavaspring-boot 使用 Guava RateLimiter 實(shí)現(xiàn)單機(jī)版限流,保護(hù) API
          spring-boot-demo-ratelimit-redisspring-boot 使用 Redis + Lua 腳本實(shí)現(xiàn)分布式限流,保護(hù) API
          spring-boot-demo-httpsspring-boot 集成 HTTPS
          spring-boot-demo-elasticsearch-rest-high-level-clientspring boot 集成 ElasticSearch 7.x 版本,使用官方 Rest High Level Client 操作 ES 數(shù)據(jù)
          spring-boot-demo-flywayspring boot 集成 Flyway,項目啟動時初始化數(shù)據(jù)庫表結(jié)構(gòu),同時支持?jǐn)?shù)據(jù)庫腳本版本控制


          特別方便的是每個demo都有詳細(xì)的知識點(diǎn)介紹和完整的代碼可以學(xué)習(xí),例如spring-boot 集成 graylog 用來實(shí)現(xiàn)日志統(tǒng)一收集的spring-boot-demo-graylog模塊,除了基本的環(huán)境準(zhǔn)備、pom文件、application配置文件等的詳細(xì)介紹之外,還有demo如何運(yùn)行、運(yùn)行成功的配圖教學(xué),簡直是手把手教你學(xué)SpringBoot。



          最后,這么好用的SpringBoot項目,貼上GitHub地址:


          https://github.com/xkcoding/spring-boot-demo








          關(guān)注GitHub今日熱榜,專注挖掘好用的開發(fā)工具,致力于分享優(yōu)質(zhì)高效的工具、資源、插件等,助力開發(fā)者成長!







          點(diǎn)個在看 你最好看



          瀏覽 67
          點(diǎn)贊
          評論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報
          評論
          圖片
          表情
          推薦
          點(diǎn)贊
          評論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  操逼操逼操逼操逼操逼 | 在线观看 禁无码精品软件 | 少妇 高潮喷水 | 国产麻豆传媒在线 | 情趣内裤操逼网站在线 |