2011-07-28 144 views
4

什么是创建包含HTML(具有正确编码)的String对象的最简单,最快捷的方式,例如我可以在@ResponseBody(Spring MVC)中返回?仅使用Java代码构建HTML

+0

取决于你正在创建的HTML,但是,从你提到的问题中我会说StringBuilder! – Shaunak

+0

This [SO answer](https://stackoverflow.com/a/45713037/8429746)必须有帮助。 – RRadley

回答

5

可以有几种方法。

首先您可以使用String或StringBuilder。这对于极短的HTML如<html>Hello, <b>world</b></html>是很好的。

如果HTML更复杂,则使用某些API更容易。采取这些链接看看:

http://xerces.apache.org/xerces-j/apiDocs/org/apache/html/dom/HTMLBuilder.html

Java HTML Builder (anti-template) library?

或谷歌搜索html builder java

其他可能性是模板。如果你实际上有一个你想替换几个单词的模板,你可以使用{0},{}这个参数标记你的HTML文件作为*.html文件。然后使用java.text.MessageFormat来创建实际的HTML文本。

下一个方法是使用像Velocity这样的“真实”模板引擎。

5

这是否适合您?

StringBuilder htmlBuilder = new StringBuilder(); 
htmlBuilder.append("<html>"); 
htmlBuilder.append("<head><title>Hello World</title></head>"); 
htmlBuilder.append("<body><p>Look at my body!</p></body>"); 
htmlBuilder.append("</html>"); 
String html = htmlBuilder.toString(); 
+0

编码怎么样? – marioosh

+0

当你说编码,你的意思是UTF-8等?或“>”的东西? – Alvin

+0

是的,UTF-8。我说的是类似于'htmlBuilder.append(“你好Łódź”);' – marioosh