Upload
julien-dubois
View
2.100
Download
1
Embed Size (px)
Citation preview
Unless otherwise indicated, these slides are © 2013-2014 Pivotal Software, Inc. and licensed under aCreative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/
JHipster, a Spring Boot + AngularJS application generator
Julien Dubois, Chief Innovation Officer, Ippon Technologies @juliendubois
Unless otherwise indicated, these slides are © 2013-2014 Pivotal Software, Inc. and licensed under aCreative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/2
Agenda
! Short introduction to JHipster
! Live coding
Unless otherwise indicated, these slides are © 2013-2014 Pivotal Software, Inc. and licensed under aCreative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/
Introduction
! What is JHipster? • A Spring Boot + AngularJS application generator
• Coded by @juliendubois & friends
• 100% Open Source
3
Unless otherwise indicated, these slides are © 2013-2014 Pivotal Software, Inc. and licensed under aCreative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/
Some numbers
! Web statistics from last month (02/2015) • More than 220,000 page views
• More than 10,000 downloads
! Github statistics • 1,741 stars
• 99 contributors
! Conferences all around the world: USA, Canada, Taiwan, France, Germany, Spain…
! Articles everywhere: Infoworld, SD Times, etc.
! Lots of feedback from successful projects
4
Unless otherwise indicated, these slides are © 2013-2014 Pivotal Software, Inc. and licensed under aCreative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/
What does JHipster do?
! Generate a Spring Boot back-end
! Generate an AngularJS front-end
! Configure a suite of tools
5
Unless otherwise indicated, these slides are © 2013-2014 Pivotal Software, Inc. and licensed under aCreative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/
The Spring Boot back-end
! Spring Boot
! Spring Security
! Spring Data JPA / Spring Data MongoDB / Cassandra
! Cache, Clustering, Monitoring…
6
Unless otherwise indicated, these slides are © 2013-2014 Pivotal Software, Inc. and licensed under aCreative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/
The AngularJS front-end
! Single-page Web application (or not!)
! HTML5 Boilerplate + Twitter Bootstrap
! i18n
! Websockets
7
Unless otherwise indicated, these slides are © 2013-2014 Pivotal Software, Inc. and licensed under aCreative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/
Suite of tools
! Yeoman
! Maven / Gradle
! Grunt / Gulp.js
! Bower
8
Unless otherwise indicated, these slides are © 2013-2014 Pivotal Software, Inc. and licensed under aCreative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/
Enough talking, let’s code!
9
Unless otherwise indicated, these slides are © 2013-2014 Pivotal Software, Inc. and licensed under aCreative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/
The « banking » application
! Manages « users » in a bank
! A « user » can have several « bankAccounts »
! A « bankAccount » can have several « operations »
! An operation has one or several « labels »
10
BankAccount
User
Operation
Label
Unless otherwise indicated, these slides are © 2013-2014 Pivotal Software, Inc. and licensed under aCreative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/11
User
Name Birthday
OperationDate Description Amount
BankAccount
Name Balance
Label
Label
1
*1
*
* *
Unless otherwise indicated, these slides are © 2013-2014 Pivotal Software, Inc. and licensed under aCreative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/
Business logic
! The current user should only see his own bank account and his own operations
! Operations should be sorted by date, and displayed correctly
! The balance should be updated when a new operation is added
12
Unless otherwise indicated, these slides are © 2013-2014 Pivotal Software, Inc. and licensed under aCreative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/
Goals
! Generate the basic application • And have a look at what’s generated
! Generate the CRUD entities
! Add the business logic
! Deploy in production to CloudFoundry
! … in less than 40 minutes!
13
Demo
Unless otherwise indicated, these slides are © 2013-2014 Pivotal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/
JHipster
Unless otherwise indicated, these slides are © 2013-2014 Pivotal Software, Inc. and licensed under aCreative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/15
Learn More. Stay Connected.
Twitter: twitter.com/java_hipster
Website: jhipster.github.io
Github: jhipster/generator-jhipster
Twitter: twitter.com/springcentral
YouTube: spring.io/video
LinkedIn: spring.io/linkedin
Google Plus: spring.io/gplus