web-dev-qa-db-ja.com

javaのテンプレートリテラル

javascriptでは、次のコードを書くことができます:

response = {
    status: 1,
    data: {
        key : 2
    }
}
var result = `status is ${response.status}, data key is ${response.data.key}`
console.log(result);

出力は

status is 1, data key is 2

Javaでそれを行う方法を提供し、次の機能を提供するライブラリはありますか?

String xxxFunction(Map map, String template)

${response.data.key}の使用に注意してください、マップ内のマップ

7
fudy

String.formatを使用できます

String template = "status is %s, data key is %s"
String result = String.format(template, status, key);
8
pvpkiran

あなたは試すことができます StrSubstitutor Apacheの一般的なテキストから

 Map valuesMap = HashMap();
 valuesMap.put("animal", "quick brown fox");
 valuesMap.put("target", "lazy dog");
 String templateString = "The ${animal} jumps over the ${target}. ${undefined.number:-1234567890}.";
 StrSubstitutor sub = new StrSubstitutor(valuesMap);
 String resolvedString = sub.replace(templateString);

ダウンロードリンク/依存関係を見つけることができます こちら