5/26/2024

Phind.com. AI -

 I have found a AI site  https://www.phind.com/ where i give the following question: 

java code in quarkus and kafka to produce "working" class using avro with topic "working" using cronos expression from 30 seconds interval , also create client to listen if the message was send to the topic


ANSWER | PHIND INSTANT MODEL

To achieve your goal of producing a "working" class using Avro in Quarkus with Kafka, targeting a topic named "working", and setting up a consumer to listen for messages sent to this topic with a cron schedule every 30 seconds, follow these steps:

Step 1: Add Dependencies

First, ensure you have the necessary dependencies in your pom.xml file for Quarkus, Kafka, and Avro support.

<dependencies> <dependency> <groupId>io.quarkus</groupId> <artifactId>quarkus-kafka</artifactId> </dependency> <dependency> <groupId>org.apache.avro</groupId> <artifactId>avro</artifactId> </dependency> <!-- Include other necessary Quarkus extensions --> </dependencies>

Step 2: Define Your Avro Schema

Create an Avro schema for your "working" class. This example assumes a simple class structure; adjust according to your needs.

// Working.avsc { "namespace": "com.example", "type": "record", "name": "Working", "fields": [ {"name": "id", "type": "string"}, {"name": "status", "type": "string"} ] }

Generate Java classes from this schema using Avro tools or a plugin like maven-avro-plugin.

Step 3: Produce Messages

Implement a producer that sends messages to the "working" topic. Use a cron schedule to control the frequency of message production.

import io.smallrye.reactive.messaging.kafka.Record; import org.apache.avro.generic.GenericRecord; import javax.enterprise.context.ApplicationScoped; import javax.inject.Inject; import javax.ws.rs.POST; import javax.ws.rs.Path; import javax.ws.rs.Produces; import javax.ws.rs.core.MediaType; import java.time.Duration; import java.util.concurrent.TimeUnit; @Path("/produce") @ApplicationScoped public class Producer { @Inject @KafkaClient("kafka-client") Channel<KStream<String, GenericRecord>> channel; public void start() { // Schedule the producer to run every 30 seconds Timer.scheduleAtFixedRate(this::sendMessages, Duration.ofSeconds(30), Duration.ofSeconds(30)); } private void sendMessages() { try { var working = new Working(); working.setId("123"); working.setStatus("working"); Record<String, GenericRecord> record = Record.of("key", working); channel.send(record).await().indefinitely(); System.out.println("Message sent successfully."); } catch (Exception e) { e.printStackTrace(); } } }

Step 4: Consume Messages

Set up a consumer to listen for messages on the "working" topic. Use a cron schedule to trigger consumption every 30 seconds.

import io.smallrye.reactive.messaging.annotations.Blocking; import io.smallrye.reactive.messaging.annotations.Channel; import io.smallrye.reactive.messaging.annotations.Consumer; import io.smallrye.reactive.messaging.annotations.OnPartitionOffset; import org.apache.avro.generic.GenericRecord; import javax.enterprise.context.ApplicationScoped; @ApplicationScoped public class Consumer { @Channel("kafka-client") @Consumer(blocking = Blocking.BLOCK_IF_NO_MESSAGES) KStream<String, GenericRecord> stream; @OnPartitionOffset void consume(String partition, Long offset) { System.out.println("Consumed message from partition " + partition + " at offset " + offset); } }

Step 5: Configure Quarkus Application Properties

Configure your application.properties file to set up Kafka clients and topics.

# Kafka configuration quarkus.kubernetes.deployment.enabled=true quarkus.kafka.bootstrap.servers=localhost:9092 quarkus.kafka.clients.producer.topic=working quarkus.kafka.clients.consumer.topic=working quarkus.kafka.clients.consumer.group-id=my-group # Cron scheduling quarkus.scheduler.cron-expressions=0/30 * * * *

This setup uses Quarkus' reactive messaging capabilities to produce and consume messages with Avro serialization. Adjust configurations and code as needed for your specific requirements.











5/23/2024

Quarkus & Apache Kafka

 Useful links: 

A Step by Step guide to create RESTful + Event-driven Microservice using Quarkus + JPA with Postgres database | 2much2learn.com

Apache Kafka Reference Guide - Quarkus

Building a Reactive polling mechanism with SmallRye Mutiny and Quarkus | Geek Culture (medium.com)

Apache Kafka Connector - SmallRye Reactive Messaging

Emitter - Bridging the imperative and the reactive worlds - Quarkus

GitHub - rmarting/kafka-clients-quarkus-sample: Sample Quarkus application connected with Apache Kafka, Apicurio deployed in Kubernetes or OpenShift

:zap: Integrating Quarkus with Apicurio Service Registry - Roman's Blog (jromanmartin.io)

Apache Kafka Reference Guide - Quarkus

Getting Started to Quarkus Reactive Messaging with Apache Kafka - InfoQ

Apache Kafka with Reactive Streams :: Quarkus Tutorial (redhat-developer-demos.github.io)

Local Development with Redpanda, Quarkus and Testcontainers (piotrminkowski.com)

Kafka Streams with Quarkus - Piotr's TechBlog (piotrminkowski.com)

Knative Eventing with Kafka and Quarkus - Piotr's TechBlog (piotrminkowski.com)

Serverless on OpenShift with Knative, Quarkus and Kafka (piotrminkowski.com)

Kafka Streams and Quarkus: Real-Time Processing Events - InfoQ

How Apache Kafka Works: An In-Depth Guide | OpenLogic

Dev Services for Kafka - Quarkus

Getting Started to Quarkus Messaging with Apache Kafka - Quarkus




5/21/2024

Quarkus & Helm

 Useful links:

- https://docs.quarkiverse.io/quarkus-helm/dev/example-crud.html

- https://github.com/quarkiverse/quarkus-helm

- https://www.redhat.com/en/blog/introducing-the-quarkus-helm-chart

- https://appdev.consulting.redhat.com/tracks/runtimes/quarkus/helm-deployment.html

- https://opensource.com/article/21/10/quarkus-helm-chart



5/08/2024

Casco Gialle

 Casco Gialle

============

Request

1. Install Java 21 from https://adoptium.net/  -> Eclipse Temurin with admin rights.

2. Install Maven from Maven – Download Apache Maven   

3. Install IntelliJ from Download IntelliJ IDEA – The Leading Java and Kotlin IDE (jetbrains.com)

4. (Optional) Install GrallVM from GraalVM 

5. Docker from Docker: Accelerated Container Application Development

  or Podman from Getting Started with Podman | Podman

6. Install db viewers :  DBeaverPGAdminPostico (Mac)

7. Install Git Git - Downloading Package (git-scm.com)

8. Install database postgresql from EDB: Open-Source, Enterprise Postgres Database Management (enterprisedb.com)

8. minikubre Welcome! | minikube (k8s.io)


Create app in quarkus from Quarkus - Start coding with code.quarkus.io



On the Intelij we need to install the following plugins:



podman machine set --rootful=true

podman machine start

podman run -ti --rm --volume access-data:/var/lib/postgresql/data -e POSTGRES_DB=postDB -e POSTGRES_USER=postUser -e POSTGRES_PASSWORD=postPass -p 5432:5432 -d postgres 


podman run -ti --rm -e PGADMIN_DEFAULT_EMAIL=admin@adminman.com -e PGADMIN_DEFAULT_PASSWORD=postPass -e PGADMIN_LISTEN_PORT=8080 -p 8081:8080 -d docker.io/dpage/pgadmin4 


podman network inspect podman

5/07/2024

The Twelve Factors

 The Twelve Factors


I. Codebase

One codebase tracked in revision control, many deploys


II. Dependencies

Explicitly declare and isolate dependencies


III. Config

Store config in the environment


IV. Backing services

Treat backing services as attached resources


V. Build, release, run

Strictly separate build and run stages


VI. Processes

Execute the app as one or more stateless processes


VII. Port binding

Export services via port binding


VIII. Concurrency

Scale out via the process model


IX. Disposability

Maximize robustness with fast startup and graceful shutdown


X. Dev/prod parity

Keep development, staging, and production as similar as possible


XI. Logs

Treat logs as event streams


XII. Admin processes

Run admin/management tasks as one-off processes

About Docker

About Docker:

Docker helps developers build, share, run, and verify applications anywhere — without tedious environment configuration or management.

Docker Desktop: The #1 Containerization Tool for Developers | Docker




Docker History

Docker != Containers

•1979 (!) chroot was introduced (Unix V7

•2000 FreeBSD jails

•2001 Linux Vserver

•2005 Open VZ

•2006 Process Containers

•2008 LXC

•2013 Docker

•ChatGPT into Docker history




Docker Images:

  • Read only templates for creating containers
  • Includes all necessary files for running an application
  • Build time structures, as opposed to the run time structure of containers






Containers == running images      How you run you app

Images == stopped container (not 100% accurate)      How you store you application

Examples:

Docker run hello world
Docker run ubuntu
Docker run nginx

Collection of images
• One registry can contain multiple repos
• Docker.io/galea01/example webserver:v3

Best practices:
• Use official repos
• Don’t trust the :latest
• Go small
• See alpine distribution

Docker CLI

docker <object> <

Examples:

docker container run
docker images ls
docker volume create
docker network rm

Options:
--
help with params : hostname=“abc.com”
arguments: f1 f2 f3

Tab completion
ORDER MATTERS!


docker version

docker system info

docker container ls q --> print only container ID

docker container inspect

docker image pull -->  Images are automatically downloaded when running containers, as necessary

docker container run
    - i : keep strin open
    - t: pseudo TTY
    - d: run detached

docker container run it Ubuntu:latest
    CTR+D
    CTRL+P CTRL+Q

docker container attach [###]

docker logs

docker container rm

docker image rm

docker rm f $(docker ps a q)

docker system prune all


Networking

“Network type" = Bridge

•The default network driver. If you don’t specify a driver, this is the type of network you are creating. Bridge networks are com monly used

when your application runs in a container that needs to communicate with other containers on the same host

• Outside communication:

• Containers can access outside resources

• Outside hosts cannot connect directly to a container

• Needs port forwarding


- Remove network isolation between the container and the Docker host, and use the host’s networking directly

- Less scalable

- Networking just like any app running directly but with other isolation types

- Overlay networks connect multiple Docker daemons together and enable Swarm services and containers to communicate across nodes. This strategy removes the need to do OS level routing

- The overlay extends across the Docker hosts… how do we talk to other machines?



“Network type Macvlan"

networks allow you to assign a MAC address to a container, making it appear as a physical device on your network. The Docker

daemon routes traffic to containers by their MAC addresses. Using the macvlan driver is sometimes the best choice when dealing with legacy

applications that expect to be directly connected to the physical network, rather than routed through the Docker host’s network stack



Working with networks

Expose <port> [/tcp | udp ]

    dockerfile instruction 

    informs docker that container listens on specific port

Docker container run p <[ ext_port :] int_port

    Maps an external port on the host IP address to an internal port on the container IP





Commands : 

docker network ls

docker network inspect

docker network create [ d driver] name

    certain network types require prerequisites (macvlan promiscuous mode, overlay swarm)

docker network rm


Persisting Data

  • Keeps data that the container has modified
  • Makes each container unique
  • Sits on top of the union FS
    • Linux: / var / docker
    • Windows: C: ProgramData Docker windows filter
  • Remember that union file systems use a copy on write mechanism
    • Files are copied to this layer before being changed
  • is tightly coupled to the container, and disappears when the container is deleted
  • is tightly coupled to the host machine making it difficult to move the data somewhere else
  • sits on a union FS, which is written to via a storage driver incurs a performance penalty

A volume can be mounted into multiple containers

What happens when the mount directory in the container already has data in it?

    If the volume is not empty, its contents will obscure the existing data (similar to the Linux mount command). If the volume is empty, the data in the container is propagated (copied) into the volume


4/25/2024

Quarkus and Azure

 Here, I have collected some links related with Quarkus on Azure:


Tutorial: Linux Java app with Quarkus and PostgreSQL - Azure App Service | Microsoft Learn

Configure MicroProfile with Azure Key Vault - Java on Azure | Microsoft Learn

Deploy a Quarkus Web App to Azure App Service with Maven - Java on Azure | Microsoft Learn

Deploy serverless Java apps with Quarkus on Azure Functions | Microsoft Learn

Deploy Quarkus on Azure Container Apps - Java on Azure | Microsoft Learn

How to Manually Deploy a Quarkus Application to Azure with Terraform Thanks to NubesGen - Antonio's Blog (antoniogoncalves.org)

quarkus - how to specify Hosting options and plan for azure function - Stack Overflow

- GitHub - j-madden/quarkus-mssql-azure: Documentation on setting up a native built quarkus application as an Azure App Service & with an Azure SQL database connection.

Deploy Quarkus on Azure Container Apps - Java on Azure | Microsoft Learn

Tutorial: Access data with managed identity in Java using Service Connector | Microsoft Learn

Deploy Quarkus on Azure Container Apps - Java on Azure | Microsoft Learn

Functions:

 -  Deploying to Microsoft Azure Cloud - Quarkus

-  Azure Functions with Quarkus REST, Undertow, or Reactive Routes - Quarkus

Serverless on Azure Function with Quarkus - Piotr's TechBlog (piotrminkowski.com)

.


Azure Monitor

- https://learn.microsoft.com/en-us/azure/azure-monitor/app/opentelemetry-enable?tabs=java


Others: 

-  Homepage | Antonio Goncalves's Store (teachable.com)

Quarkus Azure App Configuration Extension :: Quarkiverse Documentation


Video:

Deploying Quarkus applications to Azure (youtube.com)

Quarkus Superheroes on Azure | Antonio Goncalves & Eric Deandreas (EN) (youtube.com)

Deploying Quarkus apps to Azure App Service with GitHub Actions (youtube.com)

Create & deploy app services (youtube.com)

Create & deploy app services (youtube.com) Azure

SetUp an Azure Kubernetes Cluster for your Quarkus App #coding #quarkus #java (youtube.com)



4/19/2024

chat.openai.com & Quarkus

 I have test the OpenAI by using the following link : 

 - https://chat.openai.com/g/g-UT45kboQv-quarkus-copilot

After I have "Sign in" with my Google account, I have give the following message: 

"create a rest application with a controller with crud actions for orders and another controller with crud actions for items of the orders, with one-to-many relation, in Quarkus using Panache, Repositories, Mysql data base. Write Unit Tests for controllers and repositories."(*)


RESPONSE:

(*) Update last sentence and it generate also the tests:

create a rest application with a controller with crud actions for orders and another controller with crud actions for items of the orders, with one-to-many relation, in Quarkus using Panache, Repositories, Mysql data base. Write Unit Tests with Rest Assured for the controllers and repositories created.



JWT Token authentication with Quarkus

Here are some usefull links for JWT in Quarkus:





Videos:

QUARKUS - "The new kid on the block"

Here are some useful links related with Quarkus


Quarkus for Spring Developers - Quarkus

Quarkus - OpenAPI Generator :: Quarkiverse Documentation

Writing REST Services with Quarkus REST (formerly RESTEasy Reactive) - Quarkus

Java Web App with Quarkus and JPAStreamer – Tutorial (youtube.com)

Deploying to Kubernetes :: Quarkus Tutorial (redhat-developer-demos.github.io)

Simplified Hibernate ORM with Panache - Quarkus

Home of Quarkus Cheat-Sheet (lordofthejars.github.io)

API-first development with Quarkus (robertopiva.pro)

Quarkus - All configuration options

Microservices with Quarkus – GraphQL API+ Reactive MySQL – Dumi's Blog (wordpress.com)

How to add Swagger to Quarkus - Geeky Hacker

Building REST APIs with Quarkus - Geeky Hacker

My thoughts on Active record pattern - Geeky Hacker

Quarkus for Architects who Sometimes Write Code - Being Persistent - Part 01 - Upstream - Without A Paddle (upstreamwithoutapaddle.com)

Quarkus for Architects who Sometimes Write Code - Being Persistent - Part 03 - Upstream - Without A Paddle (upstreamwithoutapaddle.com)

Getting started with Quarkus |Quarkus Tutorial | Jhooq

Tutorial: Quarkus do Zero até o Deploy no Heroku, utilizando Quarkus Java + REST + CDI + Panache, Hibernate com Postgres + Postman | by Marcus Paulo | Medium

Welcome to Quarkus: Supersonic, Kubernetes-Native Java Framework - Exceptionly

- https://marcelloraffaele.github.io/from-microservices-to-kubernetes-with-quarkus-2/


Validation:

Validation with Hibernate Validator - Quarkus


Errors:

REST API error modeling with Quarkus 2.0 | Red Hat Developer


Properties:

How to bind properties into a Map in Quarkus – Jose Carvajal – Passionate Software Engineer (sgitario.github.io)

-Update Custom Properties in Quarkus at Runtime – Jose Carvajal – Passionate Software Engineer (sgitario.github.io)

How to Debug:

How to debug Quarkus applications - Mastertheboss


Security:

Quarkus Security Securing rest api with HTTPS | Jhooq

GitHub - ilyes12zouaoui/quarkus-microservices-with-jwt

Secure REST APIs in Quarkus using Basic Auth - Geeky Hacker

- Quarkus - Authentication and Authorization With Persistence (blackslate.io)

Authentication and Authorization Using JWT on Quarkus | by Ardiansyah | Medium

Build a Java REST API With Quarkus - DZone


Qute (is like Thymeleaf) :

Quarkus | IntelliJ IDEA Documentation (jetbrains.com)

Quarkus Qute – A Test Ride - Gunnar Morling

Qute Quarkus | Some developer’s blog (rikcarve.github.io)

Quarkus Web Bundler - Main Concepts :: Quarkiverse Documentation

Qute: a Template Engine for Quarkus applications - Mastertheboss

Active record pattern:

My thoughts on Active record pattern - Geeky Hacker


MapStruct :

Using MapStruct within Quarkus. Mapping between beans is always… | by Evren Tan | Developers Keep Learning | Medium

MapStruct and Quarkus - a match made in heaven? – MapStruct


Database & Quarkus:

Connect a Quarkus app to an external SQL Server database | Red Hat Developer

Creating a CRUD shopping service with Quarkus, Hibernate Reactive ORM Panache and PostgreSQL using Active Record Pattern | by David | Geek Culture | Medium

How Quarkus simplifies Java persistence | Red Hat Developer


Testing:

Quarkus Test Framework – Jose Carvajal – Passionate Software Engineer (sgitario.github.io)

Development and Testing of Quarkus applications using Testcontainers

Testing Quarkus Applications | Baeldung

Quarkus Testing with Test Containers – Jose Carvajal – Passionate Software Engineer (sgitario.github.io)

Quarkus tests with Testcontainers and PostgreSQL - Java Code Geeks

Quarkus and Testcontainers - Gunnar MorlingTesting Quarkus Web Applications: Writing Clean Component Tests - InfoQ

Integration Testing using Quarkus, JUnit 5, and Testcontainers. | by Andres Solorzano | Medium


Testcontainers:  

Advanced Testing with Quarkus - Piotr's TechBlog (piotrminkowski.com)


Panache:

Introduction to Panache (thorben-janssen.com)

Quarkus Panache Active Record vs. Repository Pattern - Sebastian Daschner (sebastian-daschner.com)

Data Persistence with Quarkus and Hibernate Panache - Mastertheboss

Quarkus Persistence, CRUD with Panache. | Javarevisited (medium.com)

Part 2: Quarkus Persistence, CRUD with Panache. E-commerce example. | by George Sotiropoulos | Javarevisited | Medium

Split your Monolith into Microservices.How. | Javarevisited (medium.com)

Persistence With Quarkus Panache - Sebastian Daschner (sebastian-daschner.com)

Simplified Hibernate Reactive with Panache - Quarkus

Panache - Active Record Pattern (thorben-janssen.com)

Creating a CRUD shopping service with Quarkus, Hibernate Reactive ORM Panache and PostgreSQL using Active Record Pattern | by David | Geek Culture | Medium

-PanacheEntity (Quarkus - Hibernate ORM with Panache - Runtime 0.19.0 API) (javadoc.io)

Hibernate ORM with Panache in Quarkus - In Relation To


Keycloack:

Getting started with Keycloak powered by Quarkus - Mastertheboss

We look into Keycloak and OpenID using Quarkus (youtube.com)

- https://medium.com/@swechhajha12/setting-up-keycloak-identity-in-your-local-sandbox-a-step-by-step-guide-19a184d69be1

Authentication and authorization using the Keycloak REST API | Red Hat Developer


Other links related:

quarkus-rest 0.1.0 · laminba2003/quarkus-rest (artifacthub.io)

quarkus 0.0.5 · thegusmao/agusmao-charts (artifacthub.io)

API-first development with Quarkus (robertopiva.pro)

How to bind properties into a Map in Quarkus – Jose Carvajal – Passionate Software Engineer (sgitario.github.io)

Deploy Quarkus Apps into the Cloud – Jose Carvajal – Passionate Software Engineer (sgitario.github.io)

Kickstart your first Quarkus application | Quarkus Cookbook (hantsy.github.io)


Videos:

Quarkus for Spring Developers | Red Hat Developer

- Why You Want to Code With Quarkus in 2023 (youtube.com)

Catarina teaser (new logo) (youtube.com)

Run Quarkus inside docker | Dockerizing a Quarkus Application (youtube.com)

Tracing a Quarkus microservice with Jaeger (youtube.com)

Authentication and Authorization using JWT Token and Roles-Based Access Control | Quarkus Tutorial (youtube.com)

OpenId Connect and JSON Web Token Security in Quarkus by Stuart Douglas & Sergey Beryozkin (youtube.com)

Bing Videos


Upload files:

Uploading Files With Quarkus (Update) (youtube.com)


Docker:

Run Quarkus inside docker | Dockerizing a Quarkus Application | Jhooq

Docker Desktop: The #1 Containerization Tool for Developers | Docker

4 Ways to copy file from localhost to docker container | Jhooq

Implementing Docker-based PostgreSQL Database in Quarkus: External PostgreSQL Connection (trycatchdebug.net)

Quarkus remote dev in Docker containers (Update) - Sebastian Daschner (sebastian-daschner.com)

Tutorial: Quarkus App with Docker (htl-leonding-college.github.io) !!!

Kickstart your first Quarkus application | Quarkus Cookbook (hantsy.github.io)

Deploying Quarkus/PostgreSQL and Angular/Nginx on Heroku as containers | by Felipe Windmoller | Medium

Tutorial: Quarkus App with Docker (htl-leonding-college.github.io)

Quarkus remote dev in Docker containers (Update) - Sebastian Daschner (sebastian-daschner.com)

Containerize Java Project. Log : 001 | by Wajeeh Ahmed | Mar, 2024 | Medium

How to Deploy Quarkus App in Docker (youtube.com)

- https://dev.to/marcuspaulo/tutorial-publish-a-quarkus-application-in-kubernetes-minikube-and-dockerhub-36nd


Jaeger :

Demo for using opentracing/jaeger with quarkus | opentracing-quarkus (guhilling.github.io)

MicroProfile-OpenTracing with Supersonic Subatomic Quarkus | by Pavol Loffay | JaegerTracing | Medium

Quarkus - Using OpenTracing

Distributed Tracing with Quarkus, Python, Open Telemetry and Jaeger (Part 1) | by Heiko W. Rupp | ITNEXT

Step by step guide for microservice using Quarkus . | Medium


Grafana:

quarkus-grafana-dashboard/screenshot.png at master · lwitkowski/quarkus-grafana-dashboard · GitHub

-Monitoring Quarkus with Prometheus and Grafana - Exceptionly


Deploy on Cloud:

Deploy Quarkus Apps into the Cloud – Jose Carvajal – Passionate Software Engineer (sgitario.github.io)

Tutorial: Publish a Quarkus application in Kubernetes, Minikube and Dockerhub - DEV Community

Running a Quarkus Native Application on Render - Gunnar Morling

Guide to Quarkus on Kubernetes - Piotr's TechBlog (piotrminkowski.com)

Building and Deploying Cloud-Native Quarkus-based Java Applications to Kubernetes | by Gary A. Stafford | ITNEXT


Monitoring:

Monitoring Quarkus apps with Prometheus into OpenShift – Jose Carvajal – Passionate Software Engineer (sgitario.github.io)

Monitoring Quarkus apps with Prometheus into OpenShift – Jose Carvajal – Passionate Software Engineer (sgitario.github.io)


Microservices:

Implementing Microservicilities with Quarkus and MicroProfile - InfoQ


Deploy :


 ArC 

https://github.com/quarkusio/quarkus/tree/master/independent-projects/arc


CDI limitations 

https://quarkus.io/guides/cdi-reference#limitations


CDI 

https://jcp.org/en/jsr/detail?id=365


JavaBeans 

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


Expression Language 

https://jakarta.ee/specifications/expression-language 


Observer Pattern 

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


Quarkus Configuration 

https://quarkus.io/guides/all-config 


Configuration

https://microprofile.io/project/eclipse/microprofile-config 


Configuration GitHub 

https://github.com/eclipse/microprofile-config 


JUL 

https://docs.oracle.com/en/java/javase/11/docs/api/java.logging/java/util/logging/package-summary.html 


JBoss 

Logging https://github.com/jboss-logging/jboss-logging


SLF4J

 http://www.slf4j.org/ 102


Commons Logging 

https://commons.apache.org/proper/commons-logging 


GELF

 https://www.graylog.org/features/gelf 


Sentry 

https://sentry.io 


Syslog 

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


Logging format string 

https://quarkus.io/guides/logging#format-string 


SimpleDateFormat https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/text/SimpleDateFormat.htm

4/16/2024

Spring -> Useful links

About Spring: 

Spring Boot 3 in 6 minutes - YouTube

Spring Boot Project Development : REST API + Data JPA + MySQL DB (youtube.com)

Bootiful Spring Boot 3 by Josh Long (youtube.com)

Bootiful Spring Boot 3 | Josh Long at Porto Tech Hub Conference 2023 - YouTube

let's code: Spring Boot, part 4 (youtube.com)  {todo}
Spring Data JPA - Reference Documentation
Building Fast and Scalable Persistence Layers with Spring Data JPA (youtube.com)


1.Spring IOC Container :

Demystifying Spring Internals (youtube.com)

Introduction to the Spring IoC Container and Beans :: Spring Framework

Inversion of Control and Dependency Injection with Spring | Baeldung

-Top 50 Spring IOC interview questions | by Piyu Jain | JavaToDev | Medium


2.Spring MVC

-Getting Started | Serving Web Content with Spring MVC

Spring MVC Tutorial | Baeldung


3.Testing

REST Assured Tutorial: Getting Started and Setting Up Your Environment | by Nao | Medium

Test a REST API with Java | Baeldung

How to Use Rest Assured and Spring Boot Test For API Testing | by Yauheni Lukashkin | Better Programming

Rest Assured Tutorial for REST API Automation Testing (toolsqa.com)

REST-assured Support for Spring MockMvc | Baeldung

Getting Started | Testing the Web Layer (spring.io)

Testing with JUnit 5 and Spring (youtube.com)

Things I Wish I Knew When I Started Testing Spring Boot Applications (youtube.com)


4.Spring Acuator

Spring Boot Actuator Web API Documentation

The #1 Spring Boot Starter you should include in every single application (youtube.com)

Spring Boot Actuator | Baeldung

Spring Boot Actuator - javatpoint

Spring Boot Observability Uncovered: Enabling & Using the Observation API - YouTube

    - Instrumenting a library · OpenZipkin

Observability of Your Application by Marcin Grzejszczak & Tommy Ludwig @ Spring I/O 2023 - YouTube

Observability of Your Application - YouTube


5.Spring Data JPA

PowerPoint Presentation (sqltutorial.org)

A4 SQL Basics Cheat Sheet (learnsql.com)

Spring Data JPA

Entity Relationship In JPA/Hibernate/ORM - JavaTechOnline

Building Fast and Scalable Persistence Layers with Spring Data JPA | PPT (slideshare.net)


6.OAuth2 Spring

GitHub - galeaaugustin/clujproducts

Spring Security JWT: How to secure your Spring Boot REST APIs with JSON Web Tokens - YouTube

Spring Security 5 - OAuth2 Login | Baeldung

OAuth2 Login Made Easy in Java: A Spring Boot & Spring Security Walkthrough (danvega.dev)

How to Secure your REST APIs with Spring Security & JSON Web Tokens (JWTs) (danvega.dev)

Spring Office Hours: Episode 11 - Spring Security, JWTs & oAuth (youtube.com)

Secure REST API using Spring Boot | Toptal®

Spring Boot + React: JWT Authentication with Spring Security - BezKoder
Spring Boot + React + MySQL: CRUD example REST APIs - BezKoder
React + Spring Boot: Pagination example - BezKoder

OAuth2 :: Spring Security

Spring REST API + OAuth2 + Angular | Baeldung

OAuth 2.0 Configuration in Spring Boot | by Nagarjun Nagesh | Feb, 2024 | Medium

Spring Boot OAuth2 | Securing REST API | Java Development Journal (javadevjournal.com)

Spring Boot, Security, PostgreSQL, and Keycloak REST API OAuth2 (djamware.com)

Going Full OAuth with the new Spring Authorization Server in Spring Boot 3.1! #oauth2 #oauth (youtube.com)

Spring Tips: The Spring Authorization Server (youtube.com)


7.Spring integration

Spring Integration

Introduction to Spring Integration | Baeldung

Getting Started | Integrating Data (spring.io)

Simplify EAI Patterns with Spring Integration | Medium

Spring Integration Full Example - Java Code Geeks

spring-integration Tutorial => Getting started with spring-integration (riptutorial.com)



Sources:

 - GitHub - galeaaugustin/clujproducts





7/15/2018


 How to access system properties in Thymeleaf template? 

Here is the answer : 

${@environment.getProperty('myPropertyName')}

 

Database Persistence and Flyway in Quarkus

Database Persistence and Flyway in Quarkus  Building a Production-Ready Product Management System with PostgreSQL Introduction In ...