Backend · Any LLM tool that fetches it
Spring Boot 4 & Java 25 llms.txt
An llms.txt for a Spring Boot 4 & Java 25 project: a short Markdown map of what it is and where the key docs and code live.
- Path
- llms.txt
- Loads
- Fetched on request
- Format
- Markdown index (.txt)
- Used by
- Any LLM tool that fetches it
What this file tells the agent
An llms.txt gives language models and agents a short Markdown map of your Spring Boot 4 & Java 25 project: what it is and where the key docs and code live, so a tool that fetches it can go straight to the right files.
- Use jakarta.* packages for persistence, validation, and servlets; ban legacy javax.* imports.
- Represent immutable request/response DTOs using native Java Records with Jakarta validation annotations.
- Enable virtual threads (spring.threads.virtual.enabled=true) for high-throughput blocking I/O.
- Configure Spring Security using the modern SecurityFilterChain bean approach; never extend deprecated WebSecurityConfigurerAdapter.
- Avoid N+1 queries in Spring Data JPA: use @EntityGraph or JOIN FETCH JPQL queries for relational fetches.
Code to avoid, and what to write instead
The rule steers the agent away from the left and toward the right.
// Discouraged: Legacy javax namespace, verbose POJO with setters, mutable entity exposure
import javax.persistence.*; // Obsolete since Spring Boot 3; use jakarta.persistence
public class BadOrderDTO {
private String customerId;
public void setCustomerId(String id) { this.customerId = id; }
}package com.example.demo.order;
import jakarta.validation.constraints.NotBlank;
import jakarta.validation.constraints.Positive;
import org.springframework.http.ResponseEntity;
import org.springframework.web.bind.annotation.*;
import java.math.BigDecimal;
public record CreateOrderRequest(
@NotBlank String customerId,
@Positive BigDecimal amount
) {}
public record OrderResponse(Long id, String customerId, BigDecimal amount) {}
@RestController
@RequestMapping("/api/v1/orders")
public class OrderController {
private final OrderService orderService;
public OrderController(OrderService orderService) {
this.orderService = orderService;
}
@PostMapping
public ResponseEntity<OrderResponse> create(@RequestBody CreateOrderRequest request) {
OrderResponse response = orderService.processOrder(request);
return ResponseEntity.ok(response);
}
}Install it in one command
- 01
Go to your project root
The file goes at llms.txt, relative to the root.
- 02
Download the file
Run the command on the right. It downloads this preset and writes the file.
- 03
Make sure it gets used
Nothing loads llms.txt automatically. Serve it at your site root, or point agents to it from CLAUDE.md or AGENTS.md.
$ curl -fsSL "https://www.devscratchpad.tech/api/raw/llms-txt/spring-boot-4" -o "llms.txt"
writes llms.txt
llms.txt
To write the file from your own code instead, use Read your code or Convert Legacy Rules in the editor above.
More for Spring Boot 4 & Java 25
Questions
- What is llms.txt?
- llms.txt is an open proposal for a short Markdown file that lists a project's key docs and links, so AI tools can find them without crawling every page.
- Where should llms.txt be deployed?
- At /llms.txt on your documentation site, or in your repository root. Tools read it when they fetch it; nothing loads it automatically.