如何将gae Key字符串转换为html id属性字符串?

时间:2012-06-08 11:33:18

标签: java html google-app-engine

我想直接将我在java google webapp中为JDO对象生成的密钥用作我向用户提供的html文档中的id属性。

html id字符串不区分大小写,必须以[a-zA-Z]开头,然后才能包含[A-Za-z0-9-_]。使用KeyFactory.keyToString(key)(Java)将Google应用引擎密钥转换为字符串时,会返回“网页安全字符串。例如,此字符串可以安全地用作嵌入HTML文档的网址参数。”

java字符串中的websafe格式是否与html ID属性格式兼容?

如果没有,那么在两种字符串格式之间进行转换的最佳方法是什么?所以我可以有两种类似的方法:

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));

1 个答案:

答案 0 :(得分:1)

是的,它完全可用作HTML ID。