Code Explainers
Java code explainers
java
public final class HmacJwt { private static final ObjectMapper MAPPER = new ObjectMapper(); private static final Base64.Encoder ENCODER = Base64.getUrlEncoder().withoutPadding();
How HMAC-signed JWTs are created and verified
jwt
hmac
cryptography
Intermediate
9 steps
java
public final class MultipartParser { public record FilePart(String name, String filename, String contentType, byte[] content) {}
Parsing multipart form data by hand in Java
parsing
byte-arrays
http
Advanced
8 steps
java
@AutoConfiguration @EnableConfigurationProperties(RateLimiterProperties.class) @ConditionalOnClass(RateLimiter.class) public class RateLimiterAutoConfiguration {
Building a Spring Boot rate-limiter auto-config
auto-configuration
conditional-beans
rate-limiting
Intermediate
7 steps
java
import java.math.BigDecimal; import java.math.RoundingMode; import java.util.Currency;
A safe Money value type in Java
immutability
bigdecimal
value-object
Intermediate
10 steps
java
public class RequestCoalescer<K, V> { private final ConcurrentHashMap<K, CompletableFuture<V>> inFlight = new ConcurrentHashMap<>(); private final Function<K, V> loader;
Coalescing duplicate requests in Java
concurrency
caching
completablefuture
Advanced
6 steps
java
public final class NaturalOrderComparator implements Comparator<String> { public static final NaturalOrderComparator INSTANCE = new NaturalOrderComparator();
Natural-order string sorting in Java
comparator
natural-sort
string-parsing
Intermediate
9 steps
java
package com.example.validation; import java.util.List; import java.util.stream.Collectors;
Validating JSON payloads against a schema in Java
json-schema
validation
recursion
Intermediate
8 steps
java
public URI buildSearchUri(String query, int page, int size, List<String> tags) { UriComponentsBuilder builder = UriComponentsBuilder .fromUriString("https://api.example.com") .path("/v2/products/search")
Building URIs safely with UriComponentsBuilder in Spring
url-building
builder-pattern
encoding
Intermediate
5 steps
java
@Configuration @EnableWebSocketMessageBroker public class WebSocketConfig implements WebSocketMessageBrokerConfigurer {
Real-time chat over STOMP WebSockets in Spring
websockets
stomp
messaging
Intermediate
8 steps
java
@Configuration @EnableRedisHttpSession(namespace = "myapp:sessions", maxInactiveIntervalInSeconds = 1800, flushMode = FlushMode.IMMEDIATE) public class SessionConfig {
Backing HTTP sessions with Redis in Spring
session-management
redis
distributed-state
Intermediate
7 steps
java
public List<User> findUsersByEmailDomain(String domain, int minAge) { String sql = """ SELECT id, username, email, age, created_at FROM users
Safe parameterized JDBC queries in Java
jdbc
sql-injection
prepared-statement
Intermediate
7 steps
java
@Configuration @EnableBatchProcessing public class CustomerImportJobConfig {
How a chunk-based CSV import job works in Spring
batch-processing
etl
csv-parsing
Intermediate
9 steps
java
@Configuration @EnableWebSecurity public class ResourceServerConfig {
Configuring a JWT resource server in Spring
oauth2
jwt
authorization
Intermediate
8 steps
java
@Configuration public class OrderConsumerConfig { @Bean
Wiring a resilient Kafka consumer in Spring
kafka
deserialization
error-handling
Intermediate
8 steps
java
@Configuration @EnableKafka public class KafkaErrorHandlingConfig {
Kafka retry and dead-letter handling in Spring
kafka
error-handling
retry
Intermediate
7 steps
java
@Controller @RequestMapping("/employees") public class EmployeeController {
Customizing form binding in a Spring MVC controller
data-binding
validation
type-conversion
Intermediate
9 steps
java
package com.example.config.condition; import org.springframework.context.annotation.Condition; import org.springframework.context.annotation.ConditionContext;
A custom @Conditional feature flag in Spring
conditional beans
feature flags
annotations
Intermediate
7 steps
java
public List<OrderSummary> streamRecentOrders(LocalDateTime since, Consumer<OrderSummary> handler) { String sql = """ SELECT id, customer_id, total_cents, status, created_at FROM orders
Streaming large JDBC result sets safely
jdbc
streaming
resource-management
Intermediate
7 steps