在我的服务器给客户端的响应中,我注意到了很多空白和换行符。响应主体似乎正在为解析的JSP的每一行发送换行符。我只是好奇,如果这是一个问题,有人已经写了一个bean吗?这是我甚至需要担心的事情吗?
示例JSP:
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<%@page import="java.util.Date"%>
<%@page import="java.util.GregorianCalendar"%>
<%@page import="java.util.Properties"%>
<%@page import="java.util.Map"%>
<%@page import="java.util.HashMap"%>
<%@page import="java.io.IOException"%>
<head>
<title>My Page!</title>
<% String message = "Hello World!"; %>
</head>
<body>
<div><%=message%></div>
</body>
</html>
示例HTML响应:
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<!-- THESE ARE BLANK NEWLINES ... -->
<head>
<title>My Page!</title>
</head>
<body>
<div>Hello World!</div>
</body>
</html>
答案 0 :(得分:6)
是的,你可以这样做。尝试:
<%@ page trimDirectiveWhitespaces="true" %>
此处提供了更多详细信息:Strip whitespace from jsp output
答案 1 :(得分:1)
@aroth必须得到最正确的回答。但它也有后果,主要是次要的。
替代方案是标签之间没有行结尾。 e.g:
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<%@page import="java.util.Date"%><%@page
import="java.util.GregorianCalendar"%><%@page
import="java.util.Properties"%><%@page
import="java.util.Map"%><%@page
import="java.util.HashMap"%><%@page
import="java.io.IOException"%><head>
<title>My Page!</title>
<% String message = "Hello World!"; %>
</head>
<body>
<div><%=message%></div>
</body>
</html>
顺便说一下,你可以在jsp标签中输入几个:
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<%@page import="java.util.Date,java.util.GregorianCalendar,java.util.Properties,java.util.Map,java.util.HashMap,java.io.IOException"%><head>
<title>My Page!</title>
<% String message = "Hello World!"; %>
</head>
<body>
<div><%=message%></div>
</body>
</html>
答案 2 :(得分:0)
您可以通过调用在代码中执行此操作 HttpServletResponse上的重置方法