JSP生成的html里面会留下许多空白行(以及space, tab, etc.),那是动态语句留下的痕迹。当初留下这些空白行自然有他的理由 - 方便调试,这样行号才能对的上。但是对于处于production环境中的页面,这么多空白行有时候会是个灾难,常见原因有二: a. 大大增加了页面体积; b. 不利于SEO.
tomcat 5.x以后,在conf/web.xml中加入了一个参数来解决这个问题(我用的是Tomcat 6.0.10),那就是
<init-param> <param-name>trimSpaces</param-name> <param-value>true</param-value> </init-param> <servlet> <servlet-name>jsp</servlet-name> <servlet-class>org.apache.jasper.servlet.JspServlet</servlet-class> <init-param> <param-name>fork</param-name> <param-value>false</param-value> </init-param> <init-param> <param-name>xpoweredBy</param-name> <param-value>false</param-value> </init-param> <init-param> <param-name>trimSpaces</param-name> <param-value>true</param-value> </init-param> <load-on-startup>3</load-on-startup> </servlet>
在web.xml里面给jsp servlet添加这个参数就OK。
我试了几次好象不行,还需要在页面上加两段代码:<%@ page trimDirectiveWhitespaces="true" %>和out.clear();
比如:
<%@ page language="java" pageEncoding="GB18030"%> <%@ taglib uri="http://struts.apache.org/tags-bean" prefix="bean"%> <%@ taglib uri="http://struts.apache.org/tags-html" prefix="html"%> <%@ taglib uri="http://struts.apache.org/tags-logic" prefix="logic"%> <%@ taglib uri="http://struts.apache.org/tags-tiles" prefix="tiles"%> <%@ page trimDirectiveWhitespaces="true"%> <% String filepath = "adminSet.do";//页面路径 request.setAttribute("filepath", filepath); String path = request.getContextPath(); String basePath = request.getScheme() + "://" + request.getServerName() + ":" + request.getServerPort() + path + "/"; out.clear(); %>
去除JSP留下的空白行
JSP生成的html里面会留下许多空白行(以及space, tab, etc.),那是动态语句留下的痕迹。当初留下这些空白行自然有他的理由 - 方便调试,这样行号才能对的上。但是对于处于production环境中的页面,这么多空白行有时候会是个灾难,常见原因有二: a. 大大增加了页面体积; b. 不利于SEO.
众所周知,tomcat 5.x以后新加入了一个参数来解决这个问题,那就是
但是这样做有一个问题: 本来有用的space也会被trim掉。比如
更好的方案是,利用Ant的replaceregexp task,把你不想要的东西替换掉,包括空行和空白。以下ant代码是我在工程中用到的,供参考:
众所周知,tomcat 5.x以后新加入了一个参数来解决这个问题,那就是
<init-param> <param-name>trimSpaces</param-name> <param-value>true</param-value> </init-param>在web.xml里面给jsp servlet添加这个参数就OK。
但是这样做有一个问题: 本来有用的space也会被trim掉。比如
<c:out value="${name}"/> <c:out value="${birth}"/>之间的空格,在这个开关打开以后就没了,于是乎网页就显示成Jan2007-1-1,而不是Jan 2007-1-1,这样可不好。
更好的方案是,利用Ant的replaceregexp task,把你不想要的东西替换掉,包括空行和空白。以下ant代码是我在工程中用到的,供参考:
<!-- strip blank lines before webpage --> <replaceregexp match="/r/n" replace="" flags="g" byline="false" file="${war.dir}/site/common/setvar.jsp" /> <replaceregexp match="/r/n" replace="" flags="g" byline="false"> <fileset dir="${war.dir}/site/layouts/" includes="**/*.jsp" /> </replaceregexp>由于这个步骤只是在最后把发布的网页修改了,不会影响原文件的可读性。
相关推荐
动态Jsp页面转换成静态Html页面动态Jsp页面转换成静态Html页面动态Jsp页面转换成静态Html页面动态Jsp页面转换成静态Html页面动态Jsp页面转换成静态Html页面动态Jsp页面转换成静态Html页面动态Jsp页面转换成静态Html...
当你遇到“jsp页面加载时提示loading”的问题时,这通常意味着页面正在加载或有延迟加载的情况发生。这个问题可能由多种因素导致,下面我们将详细探讨这些可能的原因及其解决方案。 1. **页面内容过多**:如果JSP...
在Spring Boot框架中,开发Web应用时经常遇到的一个问题是页面跳转失败,特别是当尝试将JSP页面与Spring Boot结合时,可能会遇到404错误。这个问题通常涉及到多个配置方面,包括视图解析器的设置、静态资源处理、...
【标题】"jsp页面人力资源管理系统静态页面"涉及的是基于JavaServer Pages(JSP)技术构建的人力资源管理系统的前端部分。JSP是一种动态网页开发技术,它允许开发者将HTML、CSS、JavaScript等静态内容与Java代码相...
在这个"SSH项目后台JSP页面.zip"压缩包中,主要包含的是项目的Web内容部分,尤其是JSP页面,这是用户与服务器交互的前端界面。 首先,让我们深入了解SSH框架的每个组件: 1. **Struts2**:这是一个MVC(Model-View...
任何jsp页面只要使用包含附件中的loading.jsp将自动拥有“页面正在加载的。。”提示信息,在页面加载完后将自动隐藏。 我为什么使用这个组件? 1。交互性。 客户清楚知道,你的页面是在加载,需要等待,而不用...
提升 JSP 页面响应速度的七大秘籍绝招 本文将介绍七大秘籍绝招,以提升 JSP 页面响应速度,提高系统性能。这些秘籍绝招涵盖了 JSP 页面的生命周期、Servlet 的 init() 方法、自动重载功能、HttpSession 的使用、...
* trimDirectiveWhitespaces:用于指定 JSP 页面是否裁剪指令空白符。 案例 以下是一个使用 Page 指令和 Include 指令的案例: ```jsp , java.util.ArrayList" %> List<String> list = new ArrayList(); ...
标题“JSP页面显示PDF,根据PDF路径在JSP页面显示PDF”意味着我们要依据PDF文件在服务器上的存储路径来生成预览链接。以下是实现这一功能的一般步骤: 1. **获取PDF路径**:首先,你需要知道PDF文件在服务器上的...
jsp登录页面设计源代码 jsp登录页面设计是指使用jsp语言来设计一个登录页面,实现用户的身份验证。下面是jsp登录页面设计的详细知识点: 1. HTML代码设计: 登录页面的静态设计使用HTML语言,通过设计HTML代码来...
### 几种JSP页面传值方式详解 在Java Web开发中,JSP(Java Server Pages)是一种常用的技术,用于创建动态网页。JSP页面之间的数据传递是实现前后端交互的关键环节之一。本文将详细介绍几种常见的JSP页面传值方式...
下面我们将深入探讨如何在 JSP 页面中进行字符串截取,并通过实例演示其用法。 1. **String 类的方法** JSP 页面实质上是 Java 代码的视图部分,因此可以使用 Java 的 String 类提供的方法来截取字符串。以下是...
"简单的JSP页面布局"是一个关键的话题,因为它涉及到如何有效地组织和展示网页内容,以提供良好的用户体验。 JSP页面布局通常包括头部、主体和底部等部分,每个部分可能包含多个元素,如导航栏、内容区域和页脚。...
JSP页面增加遮罩
JSP 登录跳转页面 在本节中,我们将详细介绍 JSP 登录跳转页面的实现细节,包括首页登录页面、判断 check 页面和最后的成功登录显示页面。 首页登录页面 首页登录页面是用户登录系统的入口点。该页面是使用 JSP ...
【标题解析】:“炫酷的登录jsp页面完整代码”指的是一个使用JSP技术构建的具有视觉吸引力的登录界面。这个项目可能包含了一整套的前端和后端代码,旨在为用户提供一个美观且功能完整的登录体验。 【描述详解】:...
当用户请求JSP页面时,服务器会执行相应的Servlet,将结果返回给客户端。 **2. JSP页面构成** JSP页面由以下几个主要部分组成: - **静态内容**:HTML、CSS、JavaScript等,直接显示在浏览器中。 - **脚本元素**:...
在这个场景中,我们讨论的是如何在一个JSP页面上根据特定条件动态地加载另一个JSP页面,这个新加载的页面通常会显示从数据库(例如Oracle)中检索到的数据。这通常涉及到前端技术如jQuery和Ajax,以及服务器端的处理...
JSP页面缓存是提高网站性能和响应速度的有效手段,它通过存储已处理过的JSP页面结果来避免每次请求时都重新执行JSP页面的编译和执行过程。本资源"JSP页面缓存的简单实现 (可用于 content-type 为字符类型的JSP页面...