Upgrade to Pro — share decks privately, control downloads, hide ads and more …

What's New in JHipsterLand - Devoxx Poland 2017

What's New in JHipsterLand - Devoxx Poland 2017

JHipster is an application generator that allows you to create monoliths or microservices, based on Spring Boot and Angular. It leverages Spring Cloud for microservices and contains best-of-breed JavaScript and CSS libraries for creating your UI. In this session, you’ll learn about what’s new in JHipster. Topics include Angular 4, Progressive Web Apps, HTTP/2, JUnit 5 and Spring 5.

Monolith Demo: https://github.com/mraible/jhipster4-demo/blob/master/README.adoc

Microservices Demo: https://developer.okta.com/blog/2017/06/20/develop-microservices-with-jhipster

Matt Raible

June 23, 2017

More Decks by Matt Raible

Other Decks in Programming


  1. What’s New in JHipster Matt Raible [email protected] #DevoxxPL @mraible +

  2. Blogger on raibledesigns.com UI Architect and Java Champion Father, Skier,

    Mountain Biker, Whitewater Rafter Web Framework Connoisseur Who is Matt Raible? Bus Lover Okta Developer Evangelist
  3. None
  4. Authentication Standards

  5. #DevoxxPL About You Are you a Java developer that likes

    Spring? Do you like JavaScript? TypeScript? Anyone using Angular? Have you used JHipster before?
  6. #DevoxxPL JHipster jhipster.github.io

  7. #DevoxxPL JHipster is Open Source Web Statistics, May 2017 386K

    Page Views 49K Downloads GitHub Statistics 7297 Stars 337 Contributors www.openhub.net/p/generator-jhipster
  8. JHipster Downloads

  9. How to use JHipster To install JHipster and Yeoman, use

    npm: npm install -g yo generator-jhipster Then create a directory and cd into it: mkdir myapp && cd myapp Then run Yeoman: yo jhipster
  10. None
  11. Feature In JHipster 4? Angular ✅ Progressive Web Apps ✅

    HTTP/2 ✅ JUnit 5 ❌ Spring 5 ❌ Bootstrap 4 ✅ What’s new in JHipsterLand? #DevoxxPL
  12. None
  13. HTTP/2 Binary, instead of textual Fully multiplexed, instead of ordered

    and blocking Can use one connection for parallelism Uses header compression to reduce overhead Allows servers to “push” responses proactively into client caches
  14. None
  15. None
  16. None
  17. HTTP/2 in JHipster /* * Enable HTTP/2 for Undertow -

    https://twitter.com/ankinson/status/829256167700492288 * HTTP/2 requires HTTPS, so HTTP requests will fallback to HTTP/1.1. * See the JHipsterProperties class and your application-*.yml configuration files * for more information. */ if (jHipsterProperties.getHttp().getVersion().equals(JHipsterProperties.Http.Version.V_2_0)) { if (container instanceof UndertowEmbeddedServletContainerFactory) { ((UndertowEmbeddedServletContainerFactory) container) .addBuilderCustomizers((builder) -> { builder.setServerOption(UndertowOptions.ENABLE_HTTP2, true); }); } }
  18. HTTP/2 in JHipster # =============================================================================================== # To enable SSL, generate

    a certificate using: # keytool -genkey -alias blog -storetype PKCS12 -keyalg RSA -keysize 2048 -keystore keystore.p12 -validity 3650 # # You can also use Let's Encrypt: # https://maximilian-boehm.com/hp2121/Create-a-Java-Keystore-JKS-from-Let-s-Encrypt-Certificates.htm # # Then, modify the server.ssl properties so your "server" configuration looks like: # # server: # port: 8443 # ssl: # key-store: keystore.p12 # key-store-password: <your-password> # keyStoreType: PKCS12 # keyAlias: blog # =============================================================================================== jhipster: http: version: V_1_1 # To use HTTP/2 you will need SSL support (see above the "server.ssl" configuration)
  19. None
  20. JUnit 5

  21. Spring 5

  22. #DevoxxPL Spring Boot 1.5 Apache Kafka Support Cloud Foundry actuator

    extensions Spring Data Ingalls LDAP support Loggers endpoint Spring Security 4.2 Support
  23. Bootstrap 4

  24. Bootstrap 4

  25. Build Tools Java: Maven or Gradle AngularJS: Gulp Angular: Webpack

    Web Dependencies: AngularJS: Bower Angular: npm or yarn
  26. None
  27. Cool Webpack Features webpack-bundle-analyzer webpack-dashboard

  28. Get Started with JHipster 4 Demo

  29. AAA Sonar Rating

  30. JHipster Libraries

  31. JHipster + React

  32. None
  33. Continuous Integration and Deployment $ yo jhipster:ci-cd Supports: Jenkins pipeline

    Travis CI GitLab CI CircleCI jhipster.github.io/setting-up-ci/
  34. None
  35. Deploying to Production Cloud Foundry Heroku Kubernetes AWS AWS with

  36. Microservices with Docker Demo

  37. JHipster 4 Tutorials and Videos Monolith https://github.com/mraible/jhipster4-demo Microservices https://developer.okta.com/blog/2017/06/20/develop- microservices-with-jhipster

  38. #DevoxxPL The JHipster Mini-Book 2.0 Release on Dec 5, 2016

    jhipster-book.com 21-points.com @jhipster_book Write your own InfoQ mini-book! github.com/mraible/infoq-mini-book
  39. developer.okta.com/blog

  40. #DevoxxPL Questions? Keep in touch! raibledesigns.com @mraible Presentations speakerdeck.com/mraible Code