JSP/Servlet 中include方法的总结

原创 2007年09月13日 16:52:00

我们在编程时经常希望用到“include”页面的方式:
<%include file='' flush=true%>
来包含公共的模板,以及公共的jsp程序。

但却遇到以下问题,
当被包含的文件中,含有<%@ page contentType="text/html;charset=UTF-8">标签时,编译时提示:不能出现多个 contentType
当没有<%@ page contentType="text/html;charset=UTF-8">标签时,却经常出现被包含文件乱码问题。

在此,我们提出两种解决方案:
1、采用<%@ page pageEncoding="UTF-8"%>的方法。
2、采用<jsp:include page="" flush="true"/>的方法。


关于方法1:
pageEncoding是设置JSP编译成Servlet时使用的编码,contentType="text/html;charset=UTF-8"是发送到客户端的编码。
当我们设定了多个contentType时,就会出现多次向客户端发送编码请求的方式,而出现“不能出现多个 contentType”的错误。
而采用pageEncoding的方式恰好可以避免这种问题。
总结:
在需要包含的页面,用<%@ page contentType="text/html;charset=UTF-8">,
在被包含的页面,用<%@ page pageEncoding="UTF-8"%>。

关于方法2:
首先让我们先了解<%include file='' flush=true%>、<jsp:include page="" flush="true"/>的差异。
<%include file='' flush=true%>
1、将包含的文件合并到同一页面,编译一个servlet
2、编译时执行
3、当被包含文件发生变化时,servlet不变化,需要重新编译,因此适用于被包含不经常变化的情况
4、可以包含除jsp页面以外的其它页面,如htm,这点很重要。
<jsp:include page="" flush="true"/>
1、分别将各个文件分别编译成servlet
2、请求时执行
3、当被包含文件发生变化时,不需要重新编译,适用于被包含经常变化的情况
4、只能包含jsp页面
因此,<jsp:include page="" flush="true"/>的方法,将被包含文件编译成servlet,引用只是引用servlet类。
总结:
在各个文件中,用<%@ page contentType="text/html;charset=UTF-8">
包含方式,<jsp:include page="" flush="true"/> 

相关文章推荐

jsp/servlet 中sendRedirect,include,forward区别

一、sendRedirect 使用方式: servlet和jsp里面一样 response.sendRedirect(); 说明: 服务器根据逻辑,发送一个状态码,告诉浏览器重新去请求新...

jsp的include两种使用方法

做jsp的大家都知道,有两种include其他页面的方法,一种是说明标签,一种是动作标签 。 我在动态网页制作教程中a.jsp页面上定义了一个 String  path = request.ge...

jsp通过include指令引入html乱码的解决方法

在jsp中使用导入html页面时,如果html页面里有中文,就会产生乱码。检查jsp文件和html文件的编码,编码一致,都是统一使用的utf-8,检查生成的Servlet类文件,发现里面直接就乱码了。...

JSP中的include的两种使用方法法

1.两种用法 此时引入的是静态的jsp文件,它将引入的jsp中的源代码原封不动地附加到当前文件中,所以在jsp程序中使用这个指令的时候file里面的值(即要导入的文件)不能带多余的标签或是与...

servlet jsp:include 与 include 指令的不同之处

jsp:include 和 include 的作用 就是 为代码重用 减少重复代码 但是这个lia

JSP引入文件的<%@ include file="FourthJsp.jsp" %>方法阐述

首先说明JSP引入文件有两种方式,分别为 和两种,分别是,第一种方式将会在编译前直接赋值被include的文件内容到当前文件中,然后一起生成一个Servlet;而第二种,将会分别生成两个不同的Ser...

jsp常用方法整理,包括servlet等

  • 2013年06月15日 13:27
  • 8KB
  • 下载

jsp servlet 乱码处理方法-表单提交的 pos 和get 方式

本文的目的是解决 jspjsp  jspservlet  跳转过程 中文乱码问题, 暂时只分析 表单提交的 post 和 get 两种方式。 本文只讲方法,不讲原理。 同时鄙视网络上哪些所以的“专家...
  • lijuwen
  • lijuwen
  • 2013年01月10日 12:29
  • 1025

jsp/servlet内置方法详解

  • 2013年11月26日 12:47
  • 21KB
  • 下载
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:JSP/Servlet 中include方法的总结
举报原因:
原因补充:

(最多只允许输入30个字)