JHipster技术简介

本文简单介绍Jhipster是什么,为什么用Jhipster,怎么用Jhipster。

WHAT - 技术栈

JHipster是什么

JHipster是一个开发平台,用于生成,开发,部署Spring Boot + Angular/React Web Application和Spring microservices。

JHipster是什么

JHipster能做什么

JHipster可以自动化生成一个完整和现代的Web应用程序或微服务架构。

基于Spring Boot框架的服务端,具备高性能和高可用的Java技术栈;

基于Angular,React和Bootstrap的时尚,现代,移动优先的前端;

基于JHipster Registry,Netflix OSS,ELK堆栈和Docker的强大的微服务架构;

使用Yeoman,Webpack和Maven/Gradle构建应用程序的强大工作流程。

JHipster开发效率

以10个微服务,每个微服务包含1个数据表和4个UI界面(基本CURD界面)的开发规模为例:

工作项

人工开发(人天)

JHipster开发(人天)

数据库建表

1

0

项目创建及配置文件编写

2

0

开发CURD代码

5

1

开发前端UI

10

1

合计:

18

2

在实际项目中因为定制化工作的需要,开发效率的差距会比这个小,但正常情况下减少一半以上的工作量是可以达到的。

前端技术栈

Angular 5和React

Bootstrap响应式网页设计

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作为统一配置

CI/CD支持

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等

哪些公司在用

使用JHipster的公司

WHY - 方法和实践

复杂架构设计的思路

架构设计思路

业界对JHipster的评价

  • DDD(领域驱动设计)的最佳实践
  • 微服务架构的最佳实践
  • 敏捷开发的最佳实践
  • DevOps的最佳实践

HOW - 应用场景

标准化的数据访问服务

  • 场景:通过JHipster生成标准化的数据访问微服务(简称DAMS),DAMS与数据库直接交互,提供Restful API给上层业务微服务调用。
  • 效果:工程代码规范的标准化,标准代码开发的自动化,隔离业务逻辑和数据访问逻辑。
  • 实现:现有JHipster功能即可满足。

客户项目的定制开发

  • 场景:定制化开发工作,通过JHipster自动生成骨干代码,后期数据库设计变更,也可通过JHipster自动化更新代码。
  • 效果:提高开发效率和代码质量,降低项目成本。
  • 实现:现有JHipster功能即可满足。

开放平台和应用市场

  • 场景:开发人员编写业务领域模型,JHipster自动生成后端微服务和前端UI。
  • 效果:作为一种PaaS服务能力提供给开发者。
  • 实现:需定制化JHipster源码。

GOAL - 目标和价值

目标和价值

参考资料

Web Site:www.jhipster.tech

JHipster Online:start.jhipster.tech

Github:github.com/jhipster/generator-jhipster

Docker:store.docker.com

相关文章

JHipster生成单体架构的应用示例

JHipster生成微服务架构的应用栈

原创声明,本文系作者授权云+社区发表,未经许可,不得转载。

如有侵权,请联系 yunjia_community@tencent.com 删除。

编辑于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏有刻

Java 小记 — Spring Boot 的实践与思考

3649
来自专栏编程

熟悉java三大框架的作用

一、Spring Spring是一个解决了许多在J2EE开发中常见的问题的强大框架。 Spring提供了管理业务对象的一致方法并且鼓励了注入对接口编程而不是对类...

2148
来自专栏纯洁的微笑

Spring Boot 2.0(三):Spring Boot 开源软件都有哪些?

2016年 Spring Boot 还没有被广泛使用,在网上查找相关开源软件的时候没有发现几个,到了现在经过2年的发展,很多互联网公司已经将 Spring Bo...

4277
来自专栏企鹅号快讯

成为Java高手的25个学习要点

. 很多人会问学java不知道该如何入手? 不知道学习的方向该怎么办? 有没有什么学习方法可以推荐? 想成为java高手,有没有一些可以衡量的标准呢? 本文就为...

2039
来自专栏纯洁的微笑

Spring Cloud在国内中小型公司能用起来吗?

今天吃完饭休息的时候瞎逛知乎,突然看到这个一个问题《Spring Cloud在国内中小型公司能用起来吗?》,吸引了我的注意。仔细的看了题主的问题,发现这是一个好...

43913
来自专栏程序人生 阅读快乐

Spring+MYBatis企业应用实战.pdf

《Spring+MyBatis企业应用实战》介绍了Java EE 领域的两个开源框架:Spring 的MVC 和MyBatis。其中Spring 的版本为4.2...

1384
来自专栏一个会写诗的程序员的博客

《Spring Boot 实战:从0到1》第1章 Spring Boot简介第1章 Spring Boot简介小结参考资料

Java Web开发涉及的技术比较繁杂,涉及到很多开发框架和工具(Java, Scala, Kotlin, Clojure,Groovy, Grails,Gr...

1072
来自专栏大数据

Spring 数据处理框架的演变

定量分析的成败在很大程度上取决于采集,存储和处理数据的能力。若能及时地向业务决策者提供深刻并可靠的数据解读,大数据项目就会有更多机会取得成功。

6156
来自专栏一个会写诗的程序员的博客

【Spring Boot 实战开发】第1讲 Kotlin 的极简特性之:隐式类型与函数式编程《Spring Boot 2.0极简教程》—— 基于 Gradle + Kotlin 的企业级应用开发最佳实

Spring Boot 是由 Pivotal 团队提供的全新框架,其设计目的是用来简化新 Spring 应用的初始搭建以及开发过程。在 Java 开发领域的诸多...

804
来自专栏Java技术分享圈

Spring - SpringBoot入门之环境搭建

资深Java培训师分享IT行业经验,用自己的见解去一个博客,希望对你们有一分帮助:

922

扫码关注云+社区