- Java Design Patterns
Java Design Patterns is intended to provide various use case scenarios and architectural concepts on prototyping adaptive applications.
mkdocs.yml # Configuration file.
docs/
readme.md # General information
summary.md # Table of contents
units/
design-patterns.md # Design patterns and architectural concepts
scenarios.md # Scenarios in practice
use-cases.md # Typical use cases
user-guide/
changelog.md # Changelog page
code_of_conduct.md # Code of conduct page
code_owners.md # Code owners page
dependency.md # Dependency page
description.md # Description page
faq.md # FAQ page
getting-started.md # Getting started page
troubleshooting.md # Troubleshooting page
upgrade.md # Upgrade page
reporting/
info.md # Informational page
issue_template.md # Issue template page
bug_report.md # Bug report template
custom_report.md # Custom report template
feature_request_template.md # Feature request template
pull_request_template.md # Pull request template
contributing/
info.md # Contributing page
links/
info.md # Links page
The Website documentation is provided by gitbook and can be discovered at url:
To enable documentation serving at localhost you can run the following script
./scripts/build-docs.sh
otherwise, the next steps should be considered:
1) Install/upgrade pip command-line utility:
pip install --upgrade pip
or if you need to install pip for the first time:
wget --no-check-certificate https://bootstrap.pypa.io/get-pip.py
python get-pip.py
2) Install the mkdocs package using pip:
pip install mkdocs
or more conveniently for Windows subsystem:
python -m pip install mkdocs --quiet
python -m mkdocs
3) Install the material theme for the website:
python -m pip install mkdocs-material --quiet
python -m pip install markdown-include --quiet
...
(see requirements.txt)
...
4) Start the server at localhost by running the following command:
python -m mkdocs build --clean --config-file mkdocs.yml
python -m mkdocs serve --verbose --dirtyreload
5) Deploy to GitHub pages:
python -m mkdocs --verbose gh-deploy --force --remote-branch gh-pages
5) Open up localhost in browser to get the default documentation homepage.
Running k8s cluster with tilt command by acquiring k8s deployment configuration:
tilt up
Shutting down k8s cluster with provisioned resources removal:
tilt down --delete-namespaces
The project uses SemVer for versioning. For the versions available, see the tags on this repository.
Java Patterns is maintained by the following GitHub team-members:
with community support please contact with us if you have some question or proposition.
Please read CONTRIBUTING.md for details on our code of conduct, and the process for submitting pull requests to us (emoji key).
This project follows the all-contributors specification. Contributions of any kind are welcome!
See also the list of contributors who participated in this project.
Java Patterns is distributed under LGPL version 3 or later, [License]. LGPLv3 is additional permissions on top of GPLv3.
Like and Java Patterns ? Consider buying me a coffee :)
- Jakarta Faces 4.0 release plan
- Annotation-free Spring
- Career path after learning Java?
- ActiveMQ Artemis embraces Jakarta EE
- Why isn't every software built in java?
- How to keep constant Heap size with MinRamPercentage and MaxRamPercentage options
- JavaFX 17 Maven Artifacts
- Will Microsoft's Ongoing Push Draw Java Developers to Azure? -- ADTmag
- hq - command line HTML processor built with Quarkus and compiled to native using GraalVM
- What Modules Are About
- Java internet address resolution plan proposed
- Microsoft open-sources Java garbage collection analyzer
- How to secure REST with Spring Security
- Kotlin update previews experimental features
- What to expect in Java 18
- JDK 17: The new features in Java 17
- JetBrains Java IDE adds project analysis, build system improvements
- Oracle launches Verrazzano container platform for Kubernetes
- Eclipse Temurin Java SE binaries debut
- GraalVM adds Native Image, compiler enhancements
- 4 Developers 2020
- You won't do it later!
- JDD 2019!
- 4 Developers 2019
- Test-Driven Development - you are doing it wrong!
- HackYeah!
- ByteMyCode - let's meet in Wrocław
- JDD is coming!
- Just stop for a moment
- Refactoring vs. Redesign
- Finding out where your class comes from
- Angular in Strict Mode
- Kotlin : the "by" keyword in Interface/Class Delegation
- Hibernate's @FetchProfile
- Docker
- Aristotle's Wheel Paradox - To Infinity and Beyond
- Java Comparison for Beginners
- Java Inheritance for Beginners
- Method determination ignored variable arity and implicit auto boxing/unboxing
- USB-C Hubs for MacBooks - Review
- On Being A Senior Software Engineer
- A Complete Guide to Using ElasticSearch with Spring Boot
- Connect Spring Boot Application with AWS Dynamo DB
- Introduction to Serverless Architecture Patterns
- How To Use Spring Security With SAML Protocol Binding
- Using Apache Kafka With Spring Boot
- What Makes a Good Junior Developer
- Integration Testing in Spring Boot Application
- Controller Advice – Exception Handler in Spring Boot
- How To Use AWS Sagemaker
- What Modules Are About
- JEP proposed to target JDK 18: 417: Vector API (Third Incubator)
- The Packaging Tool aka
jpackage
- JEP Café #4 - New candidate JEP: 418: Internet-Address Resolution SPI
- Brief Introduction to the Template Interpreter in OpenJDK
- Calling a Rust library with the Panama FFI
- JDK Mission Control Core libraries now available on Maven Central
- Fast and Secure Inter-process Communication on JDK 16 - Inside Java Newscast #11
- JEP proposed to target JDK 18: 413: Code Snippets in Java API Documentation
- Switch Expressions - JEP Café #3
- How to Find Array Length in Java with Examples
- Solved Error: cannot be cast to java.lang.Comparable
- Java String Interpolation with Examples
- Evaluate Postfix Expression in Java
- Java Reflection Invoke Static Method
- Volatile vs Synchronized in Java
- One Dimensional Array in Java – 1D Array
- Java Program for Employee Details using Class and Object
- Covariant Return Type in Java
- Static Import in Java with Example
- Sorting An Array In Java: Tips & Tricks
- Java vs JavaScript: How to Choose the Right Backend Technology?
- Splitting String in Java – Examples and Tips
- Learn from Java Champion Gerrit Grunwald: JavaFx – not dead yet
- How to Send Multiple Data Types to REST API
- Learn from Java Champion Matt Raible: JHipster to the rescue
- Java Tools for Agile Software Development
- Learn form Java Champion: Simon Ritter x Java Daily
- 5 Reasons Why Bespoke Software Development Projects Succeed
- Continuous Integration and Delivery to Improve the Software Development Workflow
- Plumbr has been acquired by Splunk
- Using Plumbr with OpenTelemetry NodeJS agent
- Extending Plumbr RUM with Web Vitals metrics
- Send alerts from Plumbr to Microsoft Teams
- Universal agent expands bottleneck coverage with slow http requests
- Achieve the three pillars of observability – link Plumbr distributed traces with logs
- Transaction snapshots become request processing
- Plumbr now monitors Python applications and APIs
- Distributed tracing in practice
- Plumbr now supports application versioning
- Spring Data JPA – Working with Views
- How to Generate Values of Basic Entity Attributes with Hibernate
- Panache – Repository Pattern
- 5 Hibernate Features You Should Use With Spring Data JPA
- Panache – Active Record Pattern
- Spring Data JPA – How to Return DTOs from Native Queries
- Introduction to Panache
- How and when to use JPA’s getReference() Method
- Quarkus & Hibernate – Getting Started
- Hibernate’s Read-Only Query Hint For Faster Read Operations
- Using Kubernetes ConfigMaps to define your Quarkus application’s properties
- CodeReady Workspaces devfile, demystified
- Decoupling microservices with Apache Camel and Debezium
- How Quarkus brings imperative and reactive programming together
- Open Liberty Java runtime now available to Red Hat Runtimes subscribers
- New features in Red Hat CodeReady Studio 12.13.0.GA and JBoss Tools 4.13.0.Final for Eclipse 2019-09
- Quarkus: Modernize “helloworld” JBoss EAP quickstart, Part 1
- Managing JBoss EAP/Wildfly using Jcliff
- Bring joy to development with Quarkus, the cloud-native Java framework
- What’s new in Red Hat Dependency Analytics
- Json Patch and Json Merge Patch in Java
- Making the Case for Digital Renovation
- Retention period and issue with Kafka data not getting deleted
- Kafka Record Patterns for Data Replication
- [MEGA DEAL] The 2021 Java Bootcamp Bundle(96% off)
- Supporting bulk operations in REST APIs
- Handling Actions Class in Selenium and its usage
- Store health and safety – Example health and safety architecture
- Developers Are Obsessed With Their Text Editors
- Understanding Istio Telemetry v2
- Spring JavaMelody Tutorial
- Spring Boot JavaMelody Tutorial
- How to find file in directory
- How to list all files in the directory
- How to convert Iterable to Collection
- Spring Boot CRUD Tutorial with embedded H2 and Freemarker
- Spring Boot CRUD Tutorial with embedded H2 and JSP
- Spring Boot Hello World – Freemarker tutorial
- Spring Boot Hello World – JSP tutorial
- How to debug maven tests