Jakarta Faces, Java Web Framework, Stateless Edition: Marketplace AliFaces
Table of Contents A Fully Stateless Jakarta Faces Marketplace with Server-Side Rendering — No HttpSession, No Saved ViewState, No Sticky SessionsStateless Faces: an old idea, revisitedA marketplace, not a Hello WorldState lives in the domain, not in the sessionServer-Side Rendering ...
-
Running DuckDB’s JDBC Driver in a GraalVM Native Image
Table of Contents The Hello WorldWhat the Agent RecordedWhy It Failed BeforeA Larger ExampleWhere This Leaves the IssueDuckDB is an in-process analytical database. You add one JAR to a Java project and get a SQL engine that reads CSV, Parquet, …
-
DuckDB in Spring Batch: Replace In-Memory Java Loops with One SQL Statement
Table of Contents The setupThe resultsWhy the differenceWhen to use itSpring Batch jobs usually follow the same pattern: an ItemReader streams rows, an ItemProcessor transforms each one, and an ItemWriter writes them out, chunk by chunk. A chunk-oriented step wires …
-
Embedding DuckDB in a Maven App (and Using It for Things That Aren’t Databases)
Table of Contents SetupQuerying a file on the internet with SQLQuerying a file on the internet with SQLWhere this is actually usefulSumming upDuckDB is described as “SQLite for analytics,” which is true: it’s an in-process database engine that runs inside …
-
Idempotent REST Endpoints Without the Boilerplate
Table of Contents The problem nobody talks about until productionWhat the idempotent Spring Boot starter doesWhat happens when things go wrongIdempotent Spring Boot and Concurrent Requests: the case people forgetThe exactly-once caveat I chose to be loud aboutQuick setup for …
-
Toward a Durable Spring PetClinic
Table of Contents OverviewWhat makes a process a good candidate for durability?Spring PetClinic as an Exploratory DeviceStep 1 — Download the Spring PetClinic sourceStep 2 — Analyze the application for durability candidates2a — Analysis: processes that are good candidates for …
-
BoxLang 1.15.0 Released: Blazing Fast Strings, Runtime Portability, and much more
Table of Contents 🔤 Headline: BoxStringBuilder and Dramatically Faster String ConcatenationThe Performance StoryA First-Class BoxStringBuilder TypeOptimization 1: &= Does In-Place AppendOptimization 2: Compiler Self-Assignment RewriteOptimization 3: Compile-Time Literal FoldingOptimization 4: Auto-Switching Runtime Concat StrategyJava Interop Nuance🚀 Headline: Pluggable ClassLoader Factory …
-
Temporal Is to Your Code What a Database Is to Your Data
Table of Contents The pre-database era, replayedThe write-ahead log, but for your local variablesTransactions that span monthsThe same pattern, elsewhere in the stackWhat this means for your Java codeOnce upon a time, applications managed their own data files. Every program …
-
“This Can’t Possibly Work”: What I Learned at a Temporal.io Workshop
Table of Contents The problem: we all became distributed systems developersDurable execution: crash-proof, not crash-preventingHow it actually works: history replay, not snapshotsThe moving partsSeeing is believingWhy this changes how you write softwareWhen developers first hear about Temporal, they tend to …
-
Nulling Out References Won’t Help Your Garbage Collector
Table of Contents The collector doesn’t delete anythingMost objects die youngref = null is dead codeWhen ref = null can helpConclusionOne of the misconceptions that I continuously run into is that nulling out references in Java helps garbage collection. This …