Testes em Java

Como Aprender

https://aleatorio.dev.br/posts/como-comecar-programar-java/

What should you do to stand out as a Java-Spring Boot Developer

Cursos

Cursos Pagos

[PT] Java COMPLETO Programação Orientada a Objetos + Projetos - Nelio Alves

Info

[EN] [NEW] Master Spring 6, Spring Boot 3, REST, JPA, Hibernate

Master Spring 6, Spring Boot 3, REST, JPA, Hibernate

Master Java framework Spring 6, AOP, Spring MVC, Spring Boot 3, Thymeleaf, Spring Security 6, Spring JDBC, JPA,REST
https://www.udemy.com/course/spring-springboot-jpa-hibernate-zero-to-master

Cursos Gratuitos

[EN] Hyperskill

Hyperskill

[EN] Java MOOC - Helsink University

About the course - Java Programming

Helsingin yliopiston kaikille avoin ja ilmainen ohjelmoinnin perusteet opettava verkkokurssi.
https://java-programming.mooc.fi/

[EN] Code Academy - Java

Java Courses & Tutorials | Codecademy

Unlock the power of Java programming with our expert-led Java courses & tutorials on Codecademy.
https://www.codecademy.com/catalog/language/java

[PT] Certificação Java OCP 17 - José Programador

Certificação Java OCP 17

Vídeos relacionados a Certificação Java OCP17
https://www.youtube.com/playlist?list=PLUP6iVXwQmPFFI0U6PveU46ORw0QsZ4VC

[PT] Maratona Java Virado no Jiraya

Maratona Java Virado no Jiraya

Melhor, maior, e o mais completo curso de Java em português grátis de toda Internet está de volta.
https://www.youtube.com/playlist?list=PL62G310vn6nFIsOCC0H-C2infYgwm8SWW

[EN] FreeCodeCamp

Learn Java – Free Java Courses for Beginners

Java is a really popular programming language that has been around for over 25+ years.
https://www.freecodecamp.org/news/learn-java-free-java-courses-for-beginners/

Vídeos

[PT]O que são anotações no Java?

O que são anotações no Java? AluraMais

O que são aqueles @ que aparecem nos códigos Java?
https://www.youtube.com/watch?v=d7oJwcGJWUk

[EN] Novidades do Java 8 ao 21

A categorized list of all Java and JVM features since JDK 8 to 21

Last updated on 2023/09/22 to include changes up to JDK 21.
https://advancedweb.hu/a-categorized-list-of-all-java-and-jvm-features-since-jdk-8-to-21/

  • Records

  • Optional

  • Streams

  • Java Date and Time

Documentação

JDK 22 Documentarion

JDK 22 Documentation - Home

The documentation for JDK 22 includes developer guides, API documentation, and release notes.
https://docs.oracle.com/en/java/javase/22/

Java Developer Tutorials and Training

Java Developer Tutorials and Online Training

Learn the fundamentals of the Java programming language — Java SE, Java ME, Java EE, and JavaFX — through online tutorials and training.
https://www.oracle.com/java/technologies/jdtt-jsp.html

Java

Streams

Checklist para uso de streams

  1. Você está usando collect() que guarda tudo na memória?

  2. É possível reduzir em um único passo (sum, count, max)?

  3. Você pode limitar ou processar os dados em lotes?

  4. Sua fonte de dados é realmente “streaming”?

  5. Você está evitando boxing usando Streams primitivos?

  6. Você está usando sorted() ou distinct() em dados muito grandes?

  7. O flatMap está expandindo demais o volume de dados?

  8. Os filtros mais seletivos estão no início da pipeline?

  9. É possível usar operações de curto-circuito como findFirst ou limit?

  10. Há retenção acidental de objetos nas lambdas ou coletores?

Artigos

https://computaria.gitlab.io/blog/2025/03/10/peano-java-moderno

https://computaria.gitlab.io/blog/2025/04/25/java-optional

https://computaria.gitlab.io/blog/2025/04/27/java-streams-exemplo

Records

https://reflectoring.io/beginner-friendly-guide-to-java-records/

Exceções e tratamento de erros

https://insights.itexto.com.br/pensando-nas-exceptions-do-java-ou-por-que-elas-sao-assim/

https://itnext.io/my-personal-definitive-guide-to-java-exceptions-d2e4131393c7

https://www.baeldung.com/java-exceptions

https://www.baeldung.com/java-checked-unchecked-exceptions

https://www.baeldung.com/java-errors-vs-exceptions

https://www.baeldung.com/java-common-exceptions

https://www.baeldung.com/java-catch-throwable-bad-practice

https://www.baeldung.com/java-lambda-exceptions

https://www.baeldung.com/java-new-custom-exception

https://www.baeldung.com/java-constructors-exceptions

https://www.baeldung.com/java-try-with-resources

https://www.baeldung.com/java-sneaky-throws

https://www.baeldung.com/java-chained-exceptions

https://www.baeldung.com/java-exception-root-cause

https://www.baeldung.com/java-exceptions-performance

https://www.baeldung.com/java-suppressed-exceptions

https://www.baeldung.com/java-exception-null-message

https://www.baeldung.com/java-exceptions-completablefuture

Evolução

https://javaevolved.github.io/]

Persistência

JDBC

JPA

Hibernate

https://github.com/brettwooldridge/HikariCP/wiki/About-Pool-Sizing

https://www.baeldung.com/spring-boot-hibernate-natural-ids

Flyway

https://github.com/flyway/flyway

https://www.red-gate.com/hub/university/courses/flyway

https://www.red-gate.com/products/flyway/resources/

Spring

Baeldung

Start Here | Baeldung

Get started with the Java language and frameworks.
https://www.baeldung.com/start-here

Spring Framework

Spring Framework

Level up your Java code and explore what Spring can do for you.
https://spring.io/projects/spring-framework

A Quick Guide to Spring @Value | Baeldung

Learn to use the Spring @Value annotation to configure fields from property files, system properties, etc.
https://www.baeldung.com/spring-value-annotation

Spring Boot

Guide to @ConfigurationProperties in Spring Boot | Baeldung

A quick and practical guide to @ConfigurationProperties annotation in Spring Boot.
https://www.baeldung.com/configuration-properties-in-spring-boot

Spring Boot Config

Using Environment Variables in Spring Boot’s Properties Files | Baeldung

Learn how to use environment variables in Spring Boot’s application.
https://www.baeldung.com/spring-boot-properties-env-variables

Spring Profiles | Baeldung

How to define and use Profiles in Spring.
https://www.baeldung.com/spring-profiles

Common Application Properties

Various properties can be specified inside your application.
https://docs.spring.io/spring-boot/docs/current/reference/html/application-properties.html

Undertow

https://www.masterspringboot.com/configuration/web-server/configuring-undertow-pool-size-in-spring-boot/

Spring MVC

Web on Servlet Stack :: Spring Framework

This part of the documentation covers support for Servlet-stack web applications built on the
https://docs.spring.io/spring-framework/reference/web.html

Spring Cloud

Spring Cloud Config

Spring Cloud Config

Spring Cloud Open Feign

Spring Cloud OpenFeign

| Baeldung

The canonical reference for building a production grade API with Spring
https://www.baeldung.com/tag/feign

Retrieve Original Message From Feign ErrorDecoder | Baeldung

Learn to retrieve the original message from Feign ErrorDecoder.
https://www.baeldung.com/feign-retrieve-original-message

Spring Data JPA

Spring Data JPA

Level up your Java code and explore what Spring can do for you.
https://spring.io/projects/spring-data-jpa

Artigos

https://vladmihalcea.com/spring-data-jpa-findbyid/

https://itnext.io/spring-data-jpa-findbyid-anti-pattern-not-b475424af9c2

Spring e Bean Validation

Java Bean Validation Basics | Baeldung

Learn the basics of Java Bean validation, the common annotations and how to trigger the validation process.
https://www.baeldung.com/java-validation

Grouping Jakarta (Javax) Validation Constraints | Baeldung

A quick and practical overview of grouping Javax validation constraints.
https://www.baeldung.com/javax-validation-groups

Difference Between @NotNull, @NotEmpty, and @NotBlank Constraints in Bean Validation | Baeldung

Learn the semantics of the @NotNull, @NotEmpty, and @NotBlank bean validation annotations in Java and how they differ.
https://www.baeldung.com/java-bean-validation-not-null-empty-blank

Validations for Enum Types | Baeldung

Learn how to build validations for enums using Java custom annotations.
https://www.baeldung.com/javax-validations-enums

Javax BigDecimal Validation | Baeldung

A quick and practical overview of BigDecimal validation using Javax.
https://www.baeldung.com/javax-bigdecimal-validation

Validating Container Elements with Bean Validation 2.0 | Baeldung

See how to use a new Bean Validation 2.
https://www.baeldung.com/bean-validation-container-elements

Java Validation List Annotations | Baeldung

Explore the utility of the List variant of the annotations available under the package jakarta.
https://www.baeldung.com/java-validation-list-annotations

Method Constraints with Bean Validation 2.0 | Baeldung

An introduction to method constraints using Bean Validation 2.
https://www.baeldung.com/javax-validation-method-constraints

Constraint Composition with Bean Validation | Baeldung

Learn how to group multiple constraints under a single, custom annotation to reduce code duplication and improve readability
https://www.baeldung.com/java-bean-validation-constraint-composition

Validation in Spring Boot | Baeldung

Learn how to validate domain objects in Spring Boot using Hibernate Validator, the reference implementation of the Bean Validation framework.
https://www.baeldung.com/spring-boot-bean-validation

Spring MVC Custom Validation | Baeldung

Learn how to build a custom validation annotation and use it in Spring MVC.
https://www.baeldung.com/spring-mvc-custom-validator

Validation for Functional Endpoints in Spring 5 | Baeldung

Explore how to implement input validation for functional endpoints in Spring 5 to avoid unexpected errors later when we’re processing the data.
https://www.baeldung.com/spring-functional-endpoints-validation

Spring Validation Message Interpolation | Baeldung

Learn how default Spring message interpolation works and how to create a custom message interpolation engine
https://www.baeldung.com/spring-validation-message-interpolation

Localized Validation Messages in REST | Baeldung

Learn to localize validation messages in a REST web service.
https://www.baeldung.com/rest-localized-validation-messages

Object Validation After Deserialization | Baeldung

Learn how to use Java’s Validation API to validate objects after deserialization.
https://www.baeldung.com/java-object-validation-deserialization

Spring Validation in the Service Layer | Baeldung

A quick and practical introduction to service layer validation in Spring.
https://www.baeldung.com/spring-service-layer-validation

Differences in @Valid and @Validated Annotations in Spring | Baeldung

Explore the key differences between the @Valid and @Validated annotations.
https://www.baeldung.com/spring-valid-vs-validated

Dynamic DTO Validation Config Retrieved from DB | Baeldung

A quick, practical guide to creating a custom, dynamic DTO validation annotation that retrieves its configurations from a database.
https://www.baeldung.com/spring-dynamic-dto-validation

Spring Security

Spring for Apache Kafka

Spring Testing

Testing :: Spring Framework

This chapter covers Spring’s support for integration testing and best practices for unit
https://docs.spring.io/spring-framework/reference/testing.html#testing

@Autowired X Constructor Injection

You should stop using Spring @Autowired

Or “Why you shouldn’t use Field Injection when using Spring”.
https://www.linkedin.com/pulse/you-should-stop-using-spring-autowired-felix-coutinho/

Tratamento de erros

https://medium.com/@claudionetto/usando-problemdetails-para-facilitar-e-melhorar-o-retorno-de-exce%C3%A7%C3%B5es-5c060a42f637

Lombok

Project Lombok

Project Lombok is a java library that automatically plugs into your editor and build tools, spicing up your java.
https://projectlombok.org/

Lombok e JPA

(tradução) Lombok e JPA: O que pode dar errado?

Esta é uma tradução do artigo Lombok and JPA: What go wrong?
https://dev.to/eronalves1996/traducao-lombok-e-jpa-o-que-pode-dar-errado-1c6

MapStruct

MapStruct – Java bean mappings, the easy way!

Java bean mappings, the easy way!
https://mapstruct.org/

MapStruct 1.5.5.Final Reference Guide

This is the reference documentation of MapStruct, an annotation processor for generating type-safe, performant and dependency-free bean mapping code.
https://mapstruct.org/documentation/stable/reference/html/#updating-bean-instances

VaVr (former Javaslang)

https://vavr.io/

https://github.com/vavr-io/vavr

https://www.baeldung.com/vavr

https://mvnrepository.com/artifact/io.vavr

Autenticação e Autorização

Spring Security

Spring Security

Level up your Java code and explore what Spring can do for you.
https://spring.io/projects/spring-security

Keycloak

Keycloak

Keycloak is an open source identity and access management solution
https://www.keycloak.org/

Monitoramento

Prometheus

Info

Swagger

Info

Apache Commons Lang

Lang – Home

The standard Java libraries fail to provide enough methods for
https://commons.apache.org/proper/commons-lang/

Feature Flags

Feature Flag, by Martin Fowler

bliki: Feature Flag

Feature flags (toggles) switch features on/off at runtime.
https://martinfowler.com/bliki/FeatureFlag.html

Feature Flags with Spring

Feature Flags with Spring | Baeldung

Learn how feature flags can help you to enable or disable different functionality in your Spring Boot application without recompiling or redeploying.
https://www.baeldung.com/spring-feature-flags

Spring Boot and Togglz Aspect

Spring Boot and Togglz Aspect | Baeldung

A quick and practical example of using Togglz with Spring Boot.
https://www.baeldung.com/spring-togglz

Togglz - Feature Flags for the Java platform

Togglz

Feature Flags for the Java platform
https://www.togglz.org/

Unlock Feature Flags in Java Spring Boot 3 — with Togglz!

https://www.youtube.com/watch?v=-FdegW8XX0c

Togglz 🔥 | Runtime Feature Rollouts in Spring Boot Application | JavaTechie

https://www.youtube.com/watch?v=Iafp5v3eVyQ

Ferramentas

FlatLaf

Swing Look and Feel (with Darcula/IntelliJ themes support)

https://github.com/JFormDesigner/FlatLaf

Refatoração

https://github.com/refactorfirst/RefactorFirst

ursinho de java gratuito pra que eu possa ir me familiarizando ja?

Awesome Java

https://github.com/akullpp/awesome-java