jhipster
DESCRIPTION
Introduction to JHipster in TWJUG Nov.TRANSCRIPT
JHipster
薛元揆 (Study)@phstudy
Java Hipster is a Yeoman Generator
What is Yeoman?
Scaffolding Java Webapp in several steps
https://github.com/jhipster/jhipster-sample-app
Demo
Front-end
Front-end• Dependency Management
• Bower
• JavaScript framework
• AngularJS
• Angular Translate (i18n)
• CSS framework
• Bootstrap
Front-end• Task Runner
• Grunt / Gulp.js
• dev: live reload
• prod: compress & optimize resources, compile sass
• Testing
• Karma
• PhantomJS
Front-end
• CSS Authoring Tools
• Compass (optional)
• WebSocket
• Atmosphere (optional)
Back-end
Java & Build tools• Java Language
• Java 7
• Java 8
• Build tools
• Gradle
• Maven
Platform, MVC & Security• Platform
• Spring Boot
• dev & prod profiles
• MVC Framework
• Spring MVC
• REST Controller only
• Security Framework
• Spring Security
View Engine & WebSocket
• Template Engine
• Thymeleaf
• WebSocket
• Atmosphere (optional)
• ORM Framework
• Hibernate
• JPA
• Spring Data JPA
• JDBC Connection Pool
• HikariCP
ORM & CP
NoSQL, SQL & DB MGMT• NoSQL
• MongoDB
• SQL
• H2, MySQL & PostgreSQL...
• Database Schema Management
• Liquibase
• Cache
• ORM L2 Cache
• Hazelcast (distributed)
• Ehcache (local)
• HTTP Session Manager
• Hazelcast
Cache & Session MGMT
Monitor & Log
• Monitor
• Metrics
• Log
• Logback
JHipster Sub-generators
Sub-generators• Create entity
• Create service
• Deploy to PaaS
• Heroku
• OpenShift
Create Entity• Generated code included
• HTML & AngularJS CRUD JS
• Entity Model & Relationship
• Spring Data JPA Repository
• Spring MVC REST Controller
• Liquibase Change Set
Create Entity
Conclusions• Good reference for choosing frameworks
• Quick & easy to build simple & security CRUD application
• No DSL, just simply override
• better to commit code for each sub-generator operation
JCConf Taiwan 2014• Spring Boot
• Bootify Your Spring Applications • Gradle
• Gradle 起步⾛走: 以 CLI Application 為例 • ORM
• Simplify Multi-Tenant Queries in ORM Frameworks• Hazelcast
• Establish The Core of Cloud Computing Application by Using Hazelcast