16 年中深度入坑,用于互联网初创项目
Jhipster 项目,超越了传统的 Web 应用框架的范畴,为 Java Web 开发提供了多种架构和解决方案
谁在用
Google 埃森哲 Adobe heroku 普华永道 西门子...(官网可查)
清单中不仅有著名的互联网公司,还有传统企业的信息部门,可见其影响力
你为什么不试试
思路
Jhipster 开源项目由全球富有经验的 Java Web 工程师维护,
提供了一整套标准、前沿、高效的 Java Web 开发环境和示例代码
原本我是不用 Java 的,看到了 Spring Boot 还有些犹豫,看到 Jhipster 之后,我觉得就是它了
后端
Jhipster 提供了两套后端架构示例代码,单机 Monolithic 和集群 Microservices(二选一)
建立在 Spring Boot 和 Spring Cloud 的基础之上,需要开发人员有一些 Spring Boot 基础
Maven、Gradle 构建工具(二选一)
集成了 Swagger
提供了开发环境和产品环境两种 DevOps 模式,支持 Docker、Jenkins
数据库
支持 MySQL 等关系型数据库和 NoSQL数据库(产品模式)(多选一)
支持 H2 嵌入式数据库(开发模式,提供管理工具)
使用 Liquibase 进行数据库版本控制
数据库缓存,单机 Ehcache 和集群 Hazelcast (二选一)
前端
提供了 AngularJS 和 Angular2+ 两套前端单页示例代码
示例代码中也有 Thymeleaf,也可以使用第三方提供的 React 和 vue 代码 (多选一)
前端 CSS 引入了 Bootstrap,支持 SASS
支持 i18n
构建工具 Gulp + Bower 或 Webpack(根据 ng1 ng2+)
集成了 ng 的一些测试框架(三选一)
目前 ng4 坑还很多,建议先用 ng1、react、vue 中你觉得坑最少的那个
脚手架
新项目在创建之时,已经实现了用户登录系统(三选一),和管理工具页面
官方高度推荐的 CURD 工具(JDL)可以让开发者在项目初期,
通过领域模型的定义,快速生成数据库、后端、以及前端页面
最佳实践
许多脚手架代码,都蕴含了最佳实践,比如:
项目 Leader 是 Spring 界大神,
ng2 部分一直由 Google 工程师维护,
Hazelcast 官方提供了相关的数据库缓存代码
站在巨人的肩膀上
价值
新人:在一整套集成开发环境和前后分离的示例代码中迅速成长
老鸟:体验全栈和运维的各种新组件,新用法
骨灰:可用的 Microservices 架构