Skip to content

TextBlock

Los TextBlock son una característica de Java para manejar cadenas de texto multi línea, de forma más legible y mantenible.

  • Funcionalidad estándar desde Java 15.
  • Se usa """ para usar Text Blocks.
  • Se elimina automáticamente la indentación común.
  • Legibilidad: El código es mucho más fácil de leer y mantener.
  • Escape: No se necesita escapar de comillas internas.
  • Interpolación: Funciona perfectamente con .formatted().
Consulta SQL
String query = """
SELECT u.nombre, COUNT(p.id) as pedidos
FROM usuarios u
LEFT JOIN pedidos p ON u.id = p.usuario_id
WHERE u.activo = true
GROUP BY u.id, u.nombre
""";
HTML - JSON
String json = """
{
"usuario": "%s",
"timestamp": "%s",
"datos": %s
}
""".formatted(nombre, LocalDateTime.now(), datosJson);
Archivo de Configuración
String dockerCompose = """
version: '3.8'
services:
app:
image: myapp:latest
ports:
- "%d:8080"
""".formatted(puerto);
  • lines(): Se usa para trabajar con líneas individuales.
textBlock.lines()
.filter(line -> !line.isEmpty())
.map(line -> "// " + line) .collect(Collectors.joining("\n"));
  • indent(<value>): Agregar indentación.
textBlock.indent(4);
  • stripIndent(): Elimina indentación.
textBlock.stripIndent();
  • Usa constantes para queries reutilizables.
  • Valida parámetros antes de formatted()
  • Mantén una estructura de indentación clara.
  • Evita Text Block excesivamente largos.
  • No concatenes directamente datos de usuario.