0Pricing
Java Academy · 课时

使用场景:JSON 与 SQL

整洁地嵌入结构化文本

使用场景:JSON 与 SQL 是 CoddyKit 上的免费 Java Academy 课时。 这是第 4 节课,共 4 节。 你可以在下方免费阅读本课时的完整内容 — 然后在浏览器中使用内置代码编辑器和全天候 AI 导师进行实践。 这是 Java Academy 学习路径的一部分,你的进度在网页和 CoddyKit 应用中同步。 Java Academy 课程共包含 4 节课。

文本块的优势所在

文本块非常适合嵌入 JSON、SQL、HTML 和 XML 等结构化文本。这些格式包含大量双引号和换行,使用普通字符串处理起来很麻烦。

嵌入 JSON

JSON 中充满了双引号。在文本块中无需转义,因此字面内容看起来与真正的 JSON 完全一样。

public class Main {
    public static void main(String[] args) {
        String json = """
            {
              "name": "Alice",
              "age": 30,
              "active": true
            }
            """;
        System.out.print(json);
    }
}

JSON 数组

嵌套数组和对象仍然清晰易读,因为缩进与实际结构保持一致。

public class Main {
    public static void main(String[] args) {
        String json = """
            {
              "colors": ["red", "green", "blue"]
            }
            """;
        System.out.print(json);
    }
}

嵌入 SQL

多行 SQL 查询变得清晰且便于复制粘贴。不再需要使用带有多余空格的片段进行拼接。

public class Main {
    public static void main(String[] args) {
        String query = """
            SELECT id, name
            FROM users
            WHERE active = true
            ORDER BY name
            """;
        System.out.print(query);
    }
}

带引号值的 SQL

SQL 字符串字面量使用单引号,不会与文本块分隔符冲突,因此可以原样传递。

public class Main {
    public static void main(String[] args) {
        String sql = """
            SELECT * FROM products
            WHERE category = 'books'
            """;
        System.out.print(sql);
    }
}

构建动态值

要注入运行时值,请使用带占位符的 String.format。在实际应用中应避免手动拼接 SQL,但用于展示时,这种方式很清晰。

public class Main {
    public static void main(String[] args) {
        String template = """
            SELECT * FROM users
            WHERE id = %d
            """;
        String query = String.format(template, 42);
        System.out.print(query);
    }
}

formatted 方法

文本块与实例方法 formatted(...) 搭配得很好。这个方法是对文本块应用 String.format 的简写形式。

public class Main {
    public static void main(String[] args) {
        String json = """
            {"user": "%s", "score": %d}
            """.formatted("Bob", 95);
        System.out.print(json);
    }
}

嵌入 HTML

带属性的 HTML 标记包含许多双引号。文本块可以让它保持整洁,并且看起来符合格式要求。

public class Main {
    public static void main(String[] args) {
        String html = """
            <a href="https://example.com" class="link">
              Click here
            </a>
            """;
        System.out.print(html);
    }
}

嵌入 XML

XML 配置片段也是非常适合使用文本块的场景,因为它能让层次结构一目了然。

public class Main {
    public static void main(String[] args) {
        String xml = """
            <config>
              <port>8080</port>
              <debug>true</debug>
            </config>
            """;
        System.out.print(xml);
    }
}

处理嵌入的数据

定义完成后,可以像处理任何字符串一样处理文本块。这里我们统计一个 CSV 风格文本块的行数。

public class Main {
    public static void main(String[] args) {
        String csv = """
            id,name
            1,Alice
            2,Bob
            """;
        String[] rows = csv.strip().split("\n");
        System.out.println("Data rows: " + (rows.length - 1));
    }
}

组合多个片段

您可以先格式化较小的文本块,再将它们连接起来,从而构建更大的文档。

public class Main {
    public static void main(String[] args) {
        String row = """
            <li>%s</li>
            """;
        String list = "<ul>\n" + row.formatted("One") + row.formatted("Two") + "</ul>";
        System.out.print(list);
    }
}

快速检查

为什么说文本块特别适合嵌入 JSON?

回顾

您学习了文本块的实际应用场景:

  • 非常适合 JSON、SQL、HTML、XML
  • 双引号无需转义
  • 使用 formatted(...) 或 String.format 注入值
  • 结果是一个普通的 String,可以对其进行解析或拆分
  • 缩进反映真实结构

常见问题解答

「使用场景:JSON 与 SQL」课时是免费的吗?

是的 — 「使用场景:JSON 与 SQL」的完整文本可在网页上免费阅读。要进行交互式练习(内置代码编辑器和全天候 AI 导师)并解锁 Java Academy 课程的其余内容,请升级到 CoddyKit PRO。 Java Academy 课程共包含 4 节课。

「使用场景:JSON 与 SQL」这节课中我会学到什么?

整洁地嵌入结构化文本 你通过在浏览器中直接运行的动手代码来练习 Java Academy,全天候 AI 导师会在你学习这节课的过程中回答你的问题。

学习 Java Academy 需要有经验吗?

无需任何先前经验。CoddyKit 上的 Java Academy 课程适合初学者到高级学习者,你可以从这里开始或从头开始,按照自己的节奏学习。 这是第 4 节课,共 4 节。

「使用场景:JSON 与 SQL」课时需要多长时间?

大多数 CoddyKit 课程大约需要 5–10 分钟。每节课都很精短且互动,所以你能稳步进步,并在网页和应用中从离开的地方继续。

我能在这节 Java Academy 课中编写并运行代码吗?

能。每节 Java Academy 课都包含内置代码编辑器,你可以在浏览器中直接编写并运行真实代码,并获得即时 AI 反馈 — 无需本地设置。

此课程中的所有课时

  1. 声明文本块
  2. 缩进与去除
  3. 文本块中的转义
  4. 使用场景:JSON 与 SQL
← 返回 Java Academy