SlideShare a Scribd company logo
Microservices for the Masses with Spring Boot, JHipster, and OAuth
September 2, 2019
Matt Raible | @mraible
Photo by Shannon Tremaine on https://unsplash.com/photos/NRz7SfpnqUM
Do you use microservices?
Microservices for the Masses with Spring Boot, JHipster, and OAuth - London Java Community 2019
Blogger on raibledesigns.com and

developer.okta.com/blog
Web Developer and Java Champion
Father, Husband, Skier, Mountain
Biker, Whitewater Rafter
Open Source Connoisseur
Hi, I’m Matt Raible!
Bus Lover
Okta Developer Advocate
Microservices for the Masses with Spring Boot, JHipster, and OAuth - London Java Community 2019
Microservices for the Masses with Spring Boot, JHipster, and OAuth - London Java Community 2019
Microservices for the Masses with Spring Boot, JHipster, and OAuth - London Java Community 2019
developer.okta.com
What About You?
Agenda
1. Introduction to Microservices
2. Microservices with JHipster
3. Deploying to the Cloud
4. Developing Mobile Apps with JHipster
5. JHipster Roadmap
Part 1
Introduction to Microservices
History of Microservices
Microservices Architecture Philosophy
Why Microservices?
Demo: A Microservices Architecture with
Spring Boot and Spring Cloud
Microservices for the Masses with Spring Boot, JHipster, and OAuth - London Java Community 2019
Microservices Visionaries
Microservices for the Masses with Spring Boot, JHipster, and OAuth - London Java Community 2019
“Any organization that designs a system
(defined broadly) will produce a design
whose structure is a copy of the
organization's communication structure.”
Conway’s Law
Melvin Conway 1967
“Do one thing and do it well.”
“You shouldn't start with a microservices
architecture. Instead begin with a
monolith, keep it modular, and split it
into microservices once the monolith
becomes a problem.”
Martin Fowler March 2014
Microservices for the Masses with Spring Boot, JHipster, and OAuth - London Java Community 2019
start.spring.io
Microservices for the Masses with Spring Boot, JHipster, and OAuth - London Java Community 2019
Microservices for the Masses with Spring Boot, JHipster, and OAuth - London Java Community 2019
Demo
Using start.spring.io, create:
A service registry
A gateway
A catalog service
Create an endpoint in the catalog service
Create a filtered endpoint in the gateway
Show failover capabilities
Show Spring Security OAuth
https://github.com/oktadeveloper/java-
microservices-examples
Java Microservices with Spring Boot and Spring Cloud
https://developer.okta.com/blog/2019/05/22/java-microservices-spring-boot-spring-cloud
Microservices with JHipster
What is JHipster?
Installing and Using JHipster
JHipster’s Microservice Features
Progressive Web Applications Overview
Part 2
What is JHipster?
+ =
JHipster jhipster.tech
JHipster is a development platform to generate, develop and deploy 
Spring Boot + Angular/React Web applications and Spring microservices. 
and Vue! ✨
JHipster is Inclusive
https://github.com/jhipster/jhipster-artwork
A powerful workflow to build your
application with Yeoman, Webpack, and
Maven/Gradle
JHipster Goals
A sleek, modern, mobile-first front-
end with Angular and Bootstrap
A high-performance and robust
Java stack on the server side with
Spring Boot
A robust microservice architecture
with JHipster Registry, Netflix OSS,
Elastic Stack, and Docker
How to Use JHipster
Install JHipster and Yeoman, using npm:
npm install -g generator-jhipster
Create a directory and cd into it:
mkdir newapp && cd newapp
Run it!
jhipster
Microservices with JHipster
https://www.jhipster.tech/microservices-architecture
yelp.com/callback
Back to redirect URI
with authorization code
Exchange code for
access token and ID token
accounts.google.com
Email
**********
Go to authorization server
Redirect URI: yelp.com/cb
Scope: openid profile
Authorization Server
yelp.com
Connect with Google
Resource owner
Client
accounts.google.com


Allow Yelp to access your public
profile and contacts?
No Yes
Request consent
from resource owner
Hello Matt!
accounts.google
Get user info 

with access token
/userinfo
OAuth 2.0 and OIDC
Monolith Examples
JHipster 6 Demo
github.com/mraible/jhipster6-demo
youtu.be/uQqlO3IGpTU
21-Points Health
github.com/mraible/21-points
infoq.com/minibooks/jhipster-mini-book
Progressive Web Apps
Originate from a secure origin, load while offline, and reference a
web app manifest.
Progressive Web Apps
Can be installed on your mobile device, look and act like a native
application, but are distributed through the web.
Progressive Web Apps
Are fast!
Enable PWA in JHipster
<script>
if ('serviceWorker' in navigator) {
window.addEventListener('load', function() {
navigator.serviceWorker.register('/service-worker.js')
.then(function () {
console.log('Service Worker Registered');
});
});
}
</script>
gateway/src/main/webapp/index.html
Force HTTPS in Spring Boot
gateway/src/main/java/com/okta/developer/gateway/config/SecurityConfiguration.java
@Configuration
public class SecurityConfiguration extends WebSecurityConfigurerAdapter {
@Override
protected void configure(HttpSecurity http) throws Exception {
http.requiresChannel()
.requestMatchers(r -> r.getHeader("X-Forwarded-Proto") != null)
.requiresSecure();
}
}
https://developer.okta.com/blog/2018/07/30/10-ways-to-secure-spring-boot
Demo
Using JHipster, create:
A gateway
A store microservices app
A blog microservices app
Generate entities in apps and on gateway
Convert gateway to be a PWA
Run everything in Docker
https://github.com/oktadeveloper/java-
microservices-examples
Part 3
Deploy to the Cloud
Options for Deploying JHipster
Heroku
Cloud Foundry
AWS
Google Cloud
Microsoft Azure
For monoliths:
jhipster heroku
For microservices:
Deploy JHipster Registry
Build and deploy microservice
Build and deploy gateway
http://bit.ly/heroku-jhipster-microservices
For monoliths:
jhipster cloudfoundry
For microservices:
Deploy JHipster Registry
Build and deploy microservice
Build and deploy gateway
http://www.jhipster.tech/cloudfoundry
Using Elastic Container Service
jhipster aws-containers
Using Elastic Beanstalk
jhipster aws
Boxfuse
boxfuse run -env=prod
http://www.jhipster.tech/aws
http://www.jhipster.tech/boxfuse
mvn package -Pprod jib:dockerBuild
jhipster kubernetes
./kubectl-apply.sh
kubectl get svc gateway
https://developer.okta.com/blog/2017/06/20/
develop-microservices-with-jhipster
Part 4
Developing Mobile Apps with JHipster
What is Ionic?
Why?
Ionic Module for JHipster
JWT and OIDC Support
Entity Generator
Ionic
Ionic Framework
Develop Hybrid & PWA
Apps
https://ionicframework.com
Stencil
Vanilla Web
Components
https://stenciljs.com
PWA Toolkit
Lightning fast PWAs
https://github.com/ionic-
team/ionic-pwa-toolkit
Why?
The first version of 21-Points Health I wrote with JHipster 2.x was
painful to use on a mobile device. Versions 4.x and 5.x are better, but
still not great.
I want to develop the best user experience. Native apps are painful to
distribute, but work better than PWAs (on iOS).
How is a mobile app for JHipster
different from its Angular UI?
Run it!
yo jhipster-ionic
Ionic Module for JHipster
Because Ionic Apps need some JHipster 💙 too!
https://github.com/oktadeveloper/generator-jhipster-ionic
Install Ionic and the Ionic Module for JHipster, using npm:
npm install -g ionic generator-jhipster-ionic
Profit!
🤑
Use Ionic for JHipster to Create Mobile Apps
https://developer.okta.com/blog/2019/06/24/ionic-4-angular-spring-boot-jhipster
Create an app:
ignite new myapp -b ignite-jhipster
Ignite JHipster
https://github.com/ruddell/ignite-jhipster
Install Ignite CLI and Ignite JHipster, using npm:
npm i -g ignite-cli ignite-jhipster
Ignite!
🔥
A React Native boilerplate for JHipster apps
Build a Mobile App with React Native
https://developer.okta.com/blog/2018/10/10/react-native-spring-boot-mobile-app
Demo
Create an Ionic 4 app for JHipster
Generate entities that exist on gateway
Deploy to emulator
Deploy to phone
https://github.com/oktadeveloper/
okta-ionic4-jhipster-example
Part 5 JHipster Roadmap
What You Learned
What’s Next for JHipster
What You Learned
Microservices with Spring Cloud Config and JHipster
https://developer.okta.com/blog/2019/05/23/java-microservices-spring-cloud-config
JHipster Mobile Apps and Microservices on Pluralsight
pluralsight.com/courses/play-by-play-developing-microservices-mobile-apps-jhipster
What’s Next for JHipster?
Full Reactive with WebFlux
and Spring Cloud Gateway
Spring Boot 2.2
GraphQL and Micro Frontends
The JHipster Mini-Book

Written with Asciidoctor
Free download from InfoQ:
infoq.com/minibooks/jhipster-mini-book
Quick and to the point, 164 pages
Developed a real world app:
www.21-points.com
Buy for $20 or download for FREE
Learn More
stackoverflow.com
Spring Boot
spring.io/guides
JHipster
www.jhipster.tech
Okta APIs
developer.okta.com
developer.okta.com/blog
@oktadev
Reactive Microservices with Spring Cloud Gateway
https://developer.okta.com/blog/2019/08/28/reactive-microservices-spring-cloud-gateway
Action: Try JHipster!
https://developer.okta.com/blog/2019/04/04/java-11-java-12-jhipster-oidc
git clone https://github.com/oktadeveloper/okta-spring-webflux-react-
example.git
https://github.com/oktadeveloper/java-microservices-examples
Use the Source, Luke!
Thanks!
Keep in Touch
raibledesigns.com
@mraible
Presentations
speakerdeck.com/mraible
Code
github.com/oktadeveloper
developer.okta.com
developer.okta.com

More Related Content

PDF
Microservices for the Masses with Spring Boot, JHipster, and OAuth - Belfast ...
PDF
Mobile Development with Ionic, React Native, and JHipster - AllTheTalks 2020
PDF
Mobile Development with Ionic, React Native, and JHipster - ACGNJ Java Users ...
PPTX
Google I/O 2019 - what's new in Android Q and Jetpack
PPTX
Android study jams 2021 [collab] [master]
PDF
13 top react native animation libraries to create stellar ux
PDF
Front End Development for Back End Java Developers - Jfokus 2020
PDF
Microservices for the Masses with Spring Boot, JHipster, and OAuth - Utah JUG...
Microservices for the Masses with Spring Boot, JHipster, and OAuth - Belfast ...
Mobile Development with Ionic, React Native, and JHipster - AllTheTalks 2020
Mobile Development with Ionic, React Native, and JHipster - ACGNJ Java Users ...
Google I/O 2019 - what's new in Android Q and Jetpack
Android study jams 2021 [collab] [master]
13 top react native animation libraries to create stellar ux
Front End Development for Back End Java Developers - Jfokus 2020
Microservices for the Masses with Spring Boot, JHipster, and OAuth - Utah JUG...

What's hot (11)

PDF
Spring Boot APIs and Angular Apps: Get Hip with JHipster! KCDC 2019
PDF
Bootiful Development with Spring Boot and React - SpringOne 2017
PDF
Bootiful Development with Spring Boot and React - RWX 2017
PPTX
12 Best Android Libraries to use in 2021
PPTX
Spring Projects Infrastructure
PDF
Seven Simple Reasons to Use AppFuse
PDF
How to Win at UI Development in the World of Microservices - THAT Conference ...
PDF
Java REST API Framework Comparison - PWX 2021
PDF
Microservices for the Masses with Spring Boot, JHipster, and OAuth - Switzerl...
PPTX
Android study jams iiitv sesion 3
PDF
CraftCamp for Students - Introduction to JHipster
Spring Boot APIs and Angular Apps: Get Hip with JHipster! KCDC 2019
Bootiful Development with Spring Boot and React - SpringOne 2017
Bootiful Development with Spring Boot and React - RWX 2017
12 Best Android Libraries to use in 2021
Spring Projects Infrastructure
Seven Simple Reasons to Use AppFuse
How to Win at UI Development in the World of Microservices - THAT Conference ...
Java REST API Framework Comparison - PWX 2021
Microservices for the Masses with Spring Boot, JHipster, and OAuth - Switzerl...
Android study jams iiitv sesion 3
CraftCamp for Students - Introduction to JHipster
Ad

Similar to Microservices for the Masses with Spring Boot, JHipster, and OAuth - London Java Community 2019 (20)

PDF
Microservices for the Masses with Spring Boot and JHipster - Chicago JUG 2018
PDF
Microservices for the Masses with Spring Boot and JHipster - RWX 2018
PDF
Mobile App Development with Ionic, React Native, and JHipster - Connect.Tech ...
PDF
Microservices for the Masses with Spring Boot, JHipster and OAuth - GIDS 2019
PDF
Micro Frontends for Java Microservices - Cork JUG 2022
PDF
Micro Frontends for Java Microservices - Dublin JUG 2022
PDF
Micro Frontends for Java Microservices - Belfast JUG 2022
PDF
Get Hip with JHipster - Colorado Springs Open Source User Group 2021
PDF
Choose Your Own Adventure with JHipster & Kubernetes - Utah JUG 2020
PDF
Microservices for the Masses with Spring Boot, JHipster, and OAuth - Jforum S...
PDF
Developing PWAs and Mobile Apps with Ionic, Angular, and JHipster - Devoxx Mo...
PPTX
Getting Started With React Native Presntation
PDF
Building a full-stack app with Golang and Google Cloud Platform in one week
PPTX
PDF
Develop Hip APIs and Apps with Spring Boot and Angular - Connect.Tech 2017
PDF
Lentin joseph learning robotics using python design, simulate, program, an...
PDF
A Love Story with Kubevirt and Backstage from Cloud Native NoVA meetup Feb 2024
PDF
Building Reactive Microservices In Java 1st Edition Clement Escoffier
PDF
Cytoscape: Now and Future
PDF
Microservices for the Masses with Spring Boot and JHipster - Chicago JUG 2018
Microservices for the Masses with Spring Boot and JHipster - RWX 2018
Mobile App Development with Ionic, React Native, and JHipster - Connect.Tech ...
Microservices for the Masses with Spring Boot, JHipster and OAuth - GIDS 2019
Micro Frontends for Java Microservices - Cork JUG 2022
Micro Frontends for Java Microservices - Dublin JUG 2022
Micro Frontends for Java Microservices - Belfast JUG 2022
Get Hip with JHipster - Colorado Springs Open Source User Group 2021
Choose Your Own Adventure with JHipster & Kubernetes - Utah JUG 2020
Microservices for the Masses with Spring Boot, JHipster, and OAuth - Jforum S...
Developing PWAs and Mobile Apps with Ionic, Angular, and JHipster - Devoxx Mo...
Getting Started With React Native Presntation
Building a full-stack app with Golang and Google Cloud Platform in one week
Develop Hip APIs and Apps with Spring Boot and Angular - Connect.Tech 2017
Lentin joseph learning robotics using python design, simulate, program, an...
A Love Story with Kubevirt and Backstage from Cloud Native NoVA meetup Feb 2024
Building Reactive Microservices In Java 1st Edition Clement Escoffier
Cytoscape: Now and Future
Ad

More from Matt Raible (20)

PDF
Keep Identities in Sync the SCIMple Way - ApacheCon NA 2022
PDF
Comparing Native Java REST API Frameworks - Seattle JUG 2022
PDF
Reactive Java Microservices with Spring Boot and JHipster - Spring I/O 2022
PDF
Comparing Native Java REST API Frameworks - Devoxx France 2022
PDF
Lock That Sh*t Down! Auth Security Patterns for Apps, APIs, and Infra - Devne...
PDF
Native Java with Spring Boot and JHipster - Garden State JUG 2021
PDF
Web App Security for Java Developers - PWX 2021
PDF
Lock That Shit Down! Auth Security Patterns for Apps, APIs, and Infra - Joker...
PDF
Web App Security for Java Developers - UberConf 2021
PDF
Java REST API Framework Comparison - UberConf 2021
PDF
Native Java with Spring Boot and JHipster - SF JUG 2021
PDF
Lock That Shit Down! Auth Security Patterns for Apps, APIs, and Infra - Sprin...
PDF
Reactive Java Microservices with Spring Boot and JHipster - Denver JUG 2021
PDF
JHipster and Okta - JHipster Virtual Meetup December 2020
PDF
Java REST API Comparison: Micronaut, Quarkus, and Spring Boot - jconf.dev 2020
PDF
Security Patterns for Microservice Architectures - SpringOne 2020
PDF
Security Patterns for Microservice Architectures - ADTMag Microservices & API...
PDF
Microservices for the Masses with Spring Boot, JHipster, and OAuth - South We...
PDF
Security Patterns for Microservice Architectures - London Java Community 2020
PDF
Security Patterns for Microservice Architectures - Oktane20
Keep Identities in Sync the SCIMple Way - ApacheCon NA 2022
Comparing Native Java REST API Frameworks - Seattle JUG 2022
Reactive Java Microservices with Spring Boot and JHipster - Spring I/O 2022
Comparing Native Java REST API Frameworks - Devoxx France 2022
Lock That Sh*t Down! Auth Security Patterns for Apps, APIs, and Infra - Devne...
Native Java with Spring Boot and JHipster - Garden State JUG 2021
Web App Security for Java Developers - PWX 2021
Lock That Shit Down! Auth Security Patterns for Apps, APIs, and Infra - Joker...
Web App Security for Java Developers - UberConf 2021
Java REST API Framework Comparison - UberConf 2021
Native Java with Spring Boot and JHipster - SF JUG 2021
Lock That Shit Down! Auth Security Patterns for Apps, APIs, and Infra - Sprin...
Reactive Java Microservices with Spring Boot and JHipster - Denver JUG 2021
JHipster and Okta - JHipster Virtual Meetup December 2020
Java REST API Comparison: Micronaut, Quarkus, and Spring Boot - jconf.dev 2020
Security Patterns for Microservice Architectures - SpringOne 2020
Security Patterns for Microservice Architectures - ADTMag Microservices & API...
Microservices for the Masses with Spring Boot, JHipster, and OAuth - South We...
Security Patterns for Microservice Architectures - London Java Community 2020
Security Patterns for Microservice Architectures - Oktane20

Recently uploaded (20)

PPTX
ai tools demonstartion for schools and inter college
PPTX
Reimagine Home Health with the Power of Agentic AI​
PPTX
Oracle E-Business Suite: A Comprehensive Guide for Modern Enterprises
PDF
Raksha Bandhan Grocery Pricing Trends in India 2025.pdf
PPTX
Operating system designcfffgfgggggggvggggggggg
PDF
Addressing The Cult of Project Management Tools-Why Disconnected Work is Hold...
PDF
top salesforce developer skills in 2025.pdf
PPTX
Introduction to Artificial Intelligence
PDF
Internet Downloader Manager (IDM) Crack 6.42 Build 42 Updates Latest 2025
PDF
Wondershare Filmora 15 Crack With Activation Key [2025
PPTX
L1 - Introduction to python Backend.pptx
PDF
Adobe Premiere Pro 2025 (v24.5.0.057) Crack free
PPTX
Agentic AI : A Practical Guide. Undersating, Implementing and Scaling Autono...
PDF
System and Network Administration Chapter 2
PDF
Nekopoi APK 2025 free lastest update
PPTX
VVF-Customer-Presentation2025-Ver1.9.pptx
PDF
How to Migrate SBCGlobal Email to Yahoo Easily
PPTX
Lecture 3: Operating Systems Introduction to Computer Hardware Systems
PPTX
Essential Infomation Tech presentation.pptx
PDF
Navsoft: AI-Powered Business Solutions & Custom Software Development
ai tools demonstartion for schools and inter college
Reimagine Home Health with the Power of Agentic AI​
Oracle E-Business Suite: A Comprehensive Guide for Modern Enterprises
Raksha Bandhan Grocery Pricing Trends in India 2025.pdf
Operating system designcfffgfgggggggvggggggggg
Addressing The Cult of Project Management Tools-Why Disconnected Work is Hold...
top salesforce developer skills in 2025.pdf
Introduction to Artificial Intelligence
Internet Downloader Manager (IDM) Crack 6.42 Build 42 Updates Latest 2025
Wondershare Filmora 15 Crack With Activation Key [2025
L1 - Introduction to python Backend.pptx
Adobe Premiere Pro 2025 (v24.5.0.057) Crack free
Agentic AI : A Practical Guide. Undersating, Implementing and Scaling Autono...
System and Network Administration Chapter 2
Nekopoi APK 2025 free lastest update
VVF-Customer-Presentation2025-Ver1.9.pptx
How to Migrate SBCGlobal Email to Yahoo Easily
Lecture 3: Operating Systems Introduction to Computer Hardware Systems
Essential Infomation Tech presentation.pptx
Navsoft: AI-Powered Business Solutions & Custom Software Development

Microservices for the Masses with Spring Boot, JHipster, and OAuth - London Java Community 2019