我在一个jsp页面上,我正在对一个servlet进行ajax调用,作为回报,它提供了要在页面上显示的完整html代码。它工作正常,但在 servlet 文件中看起来杂乱无章,其中包含多printWriter.write(...)
行带有 html 代码的行。由于我必须通过 servlet 创建大型 html 代码,因此很难维护。有没有其他合适/更好的方法来做到这一点?我在 servlet 中结合了编写 html 行和逻辑,很难将它们分开。
jsp页面中的ajax调用:
$.ajax({
type: 'POST',
url: 'myServlet',
data: requestData,
dataType: "text",
}).done(function(responseData) {
$(divId).html(responseData);
});
来自 servlet 类的一些代码:
.....
String username = user.getName();
if (username != null && !username.trim().isEmpty())
username = username.substring(0, username.indexOf(" "));
else
username = "";
printWriter.write("<span id=\"username_"+i+"\" style=\"display: none;\">"+ username +"</span>");
printWriter.write("<form action=\"\" method=\"post\" name=\"userClickForm_"+i +"\" id=\"userClickForm_"+i +"\">");
printWriter.write(" <input type=\"hidden\" name=\"userId\" value=\""+userId +"\"/>");
printWriter.write("</form>");
......
混合html代码和业务逻辑的主要原因是我必须根据条件和循环结构提供div id。