Awesome Open Source
Awesome Open Source

Basic CRUD App with Angular 7.0 and Spring Boot 2.1

This example app shows how to build a basic CRUD app with Spring Boot 2.1, Spring Data, and Angular 7.0.

Please read Build a Basic CRUD App with Angular 7.0 and Spring Boot 2.1 to see how this app was created.

Prerequisites: Java 8 and Node.js. For Java 10+, you'll need to change the java.version property and jaxb-api as a dependency. See Josh Long's spring-boot-and-java-10 project on GitHub for more information.

Okta has Authentication and User Management APIs that reduce development time with instant-on, scalable user infrastructure. Okta's intuitive API and expert support make it easy for developers to authenticate, manage and secure users and roles in any application.

Getting Started

To install this example application, run the following commands:

git clone
cd okta-spring-boot-2-angular-7-example

This will get a copy of the project installed locally. To install all of its dependencies and start each app, follow the instructions below.

To run the server, cd into the server folder and run:

./mvnw spring-boot:run

To run the client, cd into the client folder and run:

npm install && npm start

Create a New OIDC App in Okta

To create a new OIDC app on Okta:

  1. Log in to your developer account, navigate to Applications, and click on Add Application.
  2. Select Single-Page App and click Next.
  3. Give the application a name, change all instances of localhost:8080 to localhost:4200 and click Done.

Server Configuration

Set your domain and copy the clientId into server/src/main/resources/application.yml.

NOTE: The value of {yourOktaDomain} should be something like dev-123456.oktapreview. Make sure you don't include -admin in the value!

    client-id: {clientId}
    issuer: https://{yourOktaDomain}/oauth2/default

Client Configuration

For the client, set the issuer and copy the clientId into client/src/app/app.module.ts.

const config = {
  issuer: 'https://{yourOktaDomain}/oauth2/default',
  redirectUri: window.location.origin + '/implicit/callback',
  clientId: '{clientId}'


This example uses the following open source libraries from Okta:


Please post any questions as comments on the blog post, or visit our Okta Developer Forums. You can also email [email protected] if would like to create a support ticket.


Apache 2.0, see LICENSE.

Get A Weekly Email With Trending Projects For These Topics
No Spam. Unsubscribe easily at any time.
java (31,749
typescript (12,049
angular (1,327
spring-boot (784
authentication (492
angular7 (69
oidc (47