1
我想直接將我在java web webapp中爲JDO對象生成的Key用作我向用戶呈現的HTML文檔中的id屬性。如何將gae密鑰字符串轉換爲html id屬性字符串?
html id字符串不區分大小寫,必須以[a-zA-Z]
開頭,然後才能包含[A-Za-z0-9-_]
。當使用KeyFactory.keyToString(key)
(Java)將谷歌應用程序引擎Key轉換爲字符串時,它會返回「一個網頁安全字符串,例如,該字符串可以安全地用作嵌入在HTML文檔中的URL參數。」
是否與html標識屬性格式兼容的java字符串中的websafe格式?
如果不是,兩種字符串格式之間轉換的最佳方式是什麼?所以,我可以有類似的兩種方法:
public static String htmlToGae(String htmlID){ ... }
public static String gaeToHTML(String gaeID){ ... }
if (gaeToHTML(htmlToGae(htmlID)) == htmlID)
return "thank you! :)";
一個簡單的「所有swanes是白色的試驗」似乎表明,網絡安全字符串的KeyFactory回報與HTML id屬性兼容:
for (int ii = 0; ii < 100; ii++)
out.println(KeyFactory.createKeyString("Document", "swan" + ii));
正如@DanielRoseman所述,它可用。我自己做了。 –