本文简单介绍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生成微服务架构的应用栈