本文簡單介紹Jhipster是什麼,爲何用Jhipster,怎麼用Jhipster。
JHipster是一個開發平臺,用於生成,開發,部署Spring Boot + Angular/React Web Application和Spring microservices。前端
JHipster能夠自動化生成一個完整和現代的Web應用程序或微服務架構。git
基於Spring Boot框架的服務端,具有高性能和高可用的Java技術棧;github
基於Angular,React和Bootstrap的時尚,現代,移動優先的前端;docker
基於JHipster Registry,Netflix OSS,ELK堆棧和Docker的強大的微服務架構;數據庫
使用Yeoman,Webpack和Maven/Gradle構建應用程序的強大工做流程。後端
以10個微服務,每一個微服務包含1個數據表和4個UI界面(基本CURD界面)的開發規模爲例:緩存
工做項 | 人工開發(人天) | JHipster開發(人天) |
---|---|---|
數據庫建表 | 1 | 0 |
項目建立及配置文件編寫 | 2 | 0 |
開發CURD代碼 | 5 | 1 |
開發前端UI | 10 | 1 |
合計: | 18 | 2 |
在實際項目中由於定製化工做的須要,開發效率的差距會比這個小,但正常狀況下減小一半以上的工做量是能夠達到的。架構
Angular 5和React框架
Bootstrap響應式網頁設計socket
HTML5
國際化
CSS的Sass
WebSocket
使用Yarn安裝新的JavaScript庫
使用Webpack構建,優化和實時加載
使用Jest和Protractor進行測試
支持Thymeleaf模板引擎
Spring Boot
Maven和Gradle
Spring Security
Spring MVC REST + Jackson
Spring Websocket
Spring Data JPA
Liquibase
Elasticsearch
MongoDB和Couchbase
Cassandra
Kafka
使用Netflix Zuul或Traefik做爲HTTP路由
使用Netflix Eureka或HashiCorp Consul做爲服務發現
使用Spring Cloud Config做爲統一配置
Jenkins
Travis CI
GitLab CI
Circle CI
使用ELK堆棧進行應用指標監控
使用ehcache,hazelcast或Infinispan進行緩存
優化的靜態資源(gzip過濾器,HTTP緩存頭)
使用Logback進行日誌管理,可在運行時進行配置
使用HikariCP鏈接池以得到最佳性能
構建標準WAR文件或可執行JAR文件
完整的Docker和Docker-Compse支持
支持全部主要雲提供商:AWS,Cloud Foundry,Heroku,Kubernetes,OpenShift,Docker等
Web Site:www.jhipster.tech
JHipster Online:start.jhipster.tech
Github:github.com/jhipster/generator-jhipster
Docker:store.docker.com
JHipster生成微服務架構的應用棧