Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Table of Contents

Key Points

...

Reference_description_with_linked_URLs_________________________Notes__________________________________________________________
m Java Basics
m Javascript
Javascript and Nodejs topics, references
m Spring and JHipster
Create Spring CRUD REST API ( Spring Boot 3 )

https://www.jhipster.tech/jhipster-lite/


https://github.com/jhipster/jhipster-lite

jhipster-lite-jhipster-lite-getting-started.pdf link

jhipster-lite-jhipster-lite-getting-started.pdf file

JHipster Lite ***

JHipster is a development platform to quickly generate, develop & deploy modern web applications & microservice architectures.



JHipster frameworks
https://www.jhipster.tech/creating-an-entity/JHipster CRUD books and authors example ***

https://github.com/FintanK/jhipster-example

JHipster CRUD example pdf

JHipster CRUD example ( verify ) ***

https://medium.com/agency04/creating-spring-petclinic-app-with-jhipster-bd8e4366b789

JHipster - Build Pet Clinic app pdf

JHipster - Build Pet Clinic app *
https://www.jhipster.tech/video-tutorial/JHipster 15 min video to create basic app
https://www.jhipster.tech/2020/06/28/jhipster-release-6.10.0.htmlJHipster 6.1 documentation

JHipster Mini-Book v5 pdf 

JHipster Mini-Book v5 gdoc


https://www.jhipster.tech/JHipster
https://www.jhipster.tech/screenshots/JHipster overview
https://www.jhipster.tech/tech-stack/JHipster tech stack
https://www.jhipster.tech/presentation/#/JHipster slides
https://www.jhipster.tech/jdl/JHipster JDL -  DSL - model entities, relations
https://www.jhipster.tech/microservices-architecture/JHipster microservices generation

https://www.jhipster.tech/

JHipster - oss

https://en.wikipedia.org/wiki/JHipster


Widget Connector
urlhttps://www.youtube.com/watch?v=9D2Pv2JnLDs
Youtube - JHipster blueprints - 1 hr

https://developer.okta.com/blog/2019/04/04/java-11-java-12-jhipster-oidc

JHipster 6 and Java 12 overview
has: Openid and CRUD features

https://www.infoq.com/minibooks/jhipster-mini-book-5

https://drive.google.com/file/d/1hRMArtWHBOFXYRWpKSXacxuyzwaoZa5c/
view?usp=sharing

JHipster mini book

https://developer.okta.com/blog/2018/11/26/spring-boot-2-dot-1-oidc-
oauth2-reactive-apis

SpringBoot oid, oauth2 support

https://www.jhipster.tech/#/learn

Learn JHipster

https://www.jhipster.tech/#/learn

Great set of modules and blueprints:

docker, swagger, ionic etc

https://developer.okta.com/blog/2019/05/15/spring-boot-login-options

Spring Boot authentication options

?? is this all ?? oauth2 no okta ??

https://developer.okta.com/blog/2019/05/13/angular-8-spring-boot-2

Basic CRUD app with Java, Spring and Angular 8

https://drive.google.com/open?id=1RjS0Lxazvix68o2tdMWIjWoV-L0ugODt

java-Front_End_Development_for_Back_End_Java_Developers_-_NYJavaSIG_2019.pdf

https://developer.okta.com/blog/2019/06/24/ionic-4-angular-spring-boot-jhipster

Build Mobile Apps with Angular, Ionic 4, and Spring Boot

https://spring.io/projects/spring-data-r2dbc#:~:text=R2DBC%20stands%20for%20Reactive%20Relational,databases
%20using%20a%20reactive%20driver.&text=It%20makes%20it%20easier%
20to,aims%20at%20being%20conceptually%20easy
.

Spring RDBC - Reactive Database Connector Framework

synch vs asynch like GORM



https://www.infoq.com/news/2021/05/jhipster-micronaut-blueprint/JHipster Micronaut blueprint *
https://www.youtube.com/watch?v=clkEUHWT9-MJHipster 7 reactive java apps * Matt Raible




Containerize Java apps
http://containertutorials.com/docker-compose/spring-boot-app.htmlContainerize Spring Boot app in Docker
https://spring.io/guides/gs/spring-boot-docker/Spring Boot and Docker concepts
https://www.callicoder.com/spring-boot-docker-example/Dockerize Spring Boot app - #recommended - ***


Angular
https://angular-university.io/my-coursesBeginner Angular course - login w github jmason90




...

JHipster Lite - Java, NPM solution for SCRUD services - apps

The original JHipster and JHLite are not the same thing, they are not generating the same code and not serving the same purpose!

Here are some choice elements you can take into account:

JHipster Lite ***

JHipster is a development platform to quickly generate, develop & deploy modern web applications & microservice architectures.

https://www.jhipster.tech/jhipster-lite/


https://github.com/jhipster/jhipster-lite

...

https://www.jhipster.tech/microservices-architecture/

Diagram


Can deploy to containers, clouds, kubernetes

https://www.jhipster.tech/kubernetes/


Consul open-source service registry platform from hashicorp - eos

...

Consul can enforce zero-trust connections on service mesh

Consul is a core component of the HashiCorp Zero Trust Security solution. Consul enforces Zero Trust by using identity-based access to ensure all communication within the service mesh is authenticated with TLS certificates and encrypted in transit.

Consul lookups can be done with HTTPS or DNS queries

https://linuxhint.com/consul_dns_interface/


Consul on Kubernetes

A robust service mesh for discovering and securely connecting applications on Kubernetes

...

Configuration using lambdas

@EnableWebSecurity
public class SecurityConfig extends WebSecurityConfigurerAdapter {

    @Override
    protected void configure(HttpSecurity http) throws Exception {
        http
            .authorizeRequests(authorizeRequests ->
                authorizeRequests
                    .antMatchers("/blog/**").permitAll()
                    .anyRequest().authenticated()
            )
            .formLogin(formLogin ->
                formLogin
                    .loginPage("/login")
                    .permitAll()
            )
            .rememberMe(withDefaults());
    }
}

Equivalent configuration without using lambdas

@EnableWebSecurity
public class SecurityConfig extends WebSecurityConfigurerAdapter {

    @Override
    protected void configure(HttpSecurity http) throws Exception {
        http
            .authorizeRequests()
                .antMatchers("/blog/**").permitAll()
                .anyRequest().authenticated()
                .and()
            .formLogin()
                .loginPage("/login")
                .permitAll()
                .and()
            .rememberMe();
    }
}

Lambda DSL configuration tips

...

You may also configure WebFlux security using lambdas in a similar manner.
Below is an example configuration using lambdas.

@EnableWebFluxSecurity
public class SecurityConfig {

    @Bean
    SecurityWebFilterChain springSecurityFilterChain(ServerHttpSecurity http) {
        http
            .authorizeExchange(exchanges ->
                exchanges
                    .pathMatchers("/blog/**").permitAll()
                    .anyExchange().authenticated()
            )
            .httpBasic(withDefaults())
            .formLogin(formLogin ->
                formLogin
                    .loginPage("/login")
            );
        return http.build();
    }
}

Goals of the Lambda DSL

The Lambda DSL was created to accomplish to following goals:

...