有几种方法可以实现服务器内部跳转?

  1. 使用request对象提供的方法:request.getRequestDispatcher(String URI).forward(ServletRequest request,ServletResponse response);
  2. 使用pageContext对象提供的方法:pageContext.forward(String URI);
  3. 使用JSP动作标签:<jsp:forward  page="URI" />;

有几种方法可以实现JSP页面的包含操作?

  1. 使用JSP指令 <%@ include file="URI" />;
  2. 使用request对象提供的方法:request.getRequestDispatcher(String URI).include(ServletRequest request,ServletResponse response);
  3. 使用pageContext对象提供的方法:pageContext.include(String URI);
  4. 使用JSP动作标签:<jsp:include page="URI" />;

上述的四种方法存在以下差异:

  • 方法1实现的是静态包含,这是一种代码级的包含,在解析JSP页面时,被包含页面不会单独生成servlet,其生成的代码将会被直接集成到主页面生成的servlet中。方法2、3、4实现的是动态包含,被包含页面和主页面单独生成各自的servlet,在处理请求,输出响应时,将被包含页面的输出内容合并到主页面的输出中来。
  • 方法1、3、4中,被包含页面和主页面内容的输出顺序遵循代码顺序,在前的先输出,在后的后输出。方法2中,先输出被包含页面的内容,然后才会输出主页面的内容。

如何解决JSP页面的中文乱码问题?

  1. 解决URL中传递中文参数乱码问题:修改server配置文件,以Tomcat为例,编辑“%CATALINA_HOME%/conf/server.xml”,在对应的连接配置标签上添加属性URIEncoding=“UTF-8”。在从request对象获取parameter之前,设置request对象的编码方式为“UTF-8”;
  2. 解决表单中传递中文参数乱码问题:设置JSP页面的属性,<%@ page contentType="text/html;charset=utf-8" />,在从request对象获取parameter之前,设置request对象的编码方式为“UTF-8”;
  3. 解决Cookie中传递中文参数乱码问题:在向Cookie对象中添加中文参数时,使用java.net.URLEncoder.encoding(String value,String charset)方法对参数进行编码;在从Cookie对象中获取中文参数时,使用java.net.URLDecoder.decoding(String value,String charset)方法对参数进行解码。

JSP知识点汇总的更多相关文章

  1. nginx几个知识点汇总

    WHY? 为什么用Nginx而不用LVS? 7点理由足以说明一切:1 .高并发连接: 官方测试能够支撑 5 万并发连接,在实际生产环境中跑到 2 - 3 万并发连接数.?2 .内存消耗少: 在 3 万 ...

  2. JSP知识点大纲图

    这是我整理出来的JSP知识点大纲图,具体的内容都可以在我的博文中找到-.

  3. python全栈开发 * 10知识点汇总 * 180612

    10 函数进阶 知识点汇总 一.动态参数 形参的第三种1.动态接收位置传参 表达:*args (在参数位置编写 * 表⽰接收任意内容) (1)动态位置参数def eat(*args): print(a ...

  4. 清华大学OS操作系统实验lab1练习知识点汇总

    lab1知识点汇总 还是有很多问题,但是我觉得我需要在查看更多资料后回来再理解,学这个也学了一周了,看了大量的资料...还是它们自己的80386手册和lab的指导手册觉得最准确,现在我就把这部分知识做 ...

  5. JSP知识汇总

    JSP知识汇总 一.简介 > HTML - HTML擅长显示一个静态的网页,但是不能调用Java程序. > Servlet - Servlet擅长调用Java程序和后台进行交互,但是它不擅 ...

  6. c++ 函数知识点汇总

    c++ 函数知识点汇总 swap函数 交换两个数组元素 比如 swap(a[i],a[j]); 就是交换a[i] 和 a[j] 的值 strcpy() 复制一个数组元素的值到另一个数组元素里 strc ...

  7. 前端开发 JavaScript 干货知识点汇总

    很多初学的朋友经常问我,前端JavaScript都需要学习哪些东西呀?哪些是JavaScript的重点知识啊? 其实做前端开发工程师,所有的知识点都是我们学习必备的东西,只有扎实的技术基础才是高薪的关 ...

  8. BBS项目知识点汇总

    目录 bbs项目知识点汇总 一. JavaScript 1 替换头像 2 form表单拿数据 3 form组件error信息渲染 4 添加html代码 5 聚焦操作 二 . html在线编辑器 三 . ...

  9. Java面试知识点汇总

    Java面试知识点汇总 置顶 2019年05月07日 15:36:18 温柔的谢世杰 阅读数 21623 文章标签: 面经java 更多 分类专栏: java 面试 Java面试知识汇总   版权声明 ...

随机推荐

  1. 访问google.com

    ping www.google.com 得到的IP来访问

  2. Java面向对象三大特点之多态

    概念: 多态是同一个行为具有多个不同表现形式或形态的能力. 多态就是同一个接口,使用不同的实例而执行不同操作,如图所示: 多态性是对象多种表现形式的体现,同一个事件发生在不同的对象上会产生不同的结果. ...

  3. Codeforces Round #262 (Div. 2)

    A #include <iostream> #include<cstdio> #include<cstring> #include<algorithm> ...

  4. 【转】linux命令详解:md5sum命令

    [转]linux命令详解:md5sum命令 转自:http://blog.itpub.net/29320885/viewspace-1710218/ 前言 在网络传输.设备之间转存.复制大文件等时,可 ...

  5. seek指针大文件上传

    package mainimport (    // "bufio"    "fmt"    "github.com/axgle/mahonia&qu ...

  6. OpenGL的glTexImage2D()与gluBuild2DMipmaps()的使用方法及区别

    OpenGL的glTexImage2D()与gluBuild2DMipmaps()的使用方法及区别 说明:两者的都是生成纹理,即:将载入的位图文件(*.bmp)转换成纹理贴图. 1.glTexImag ...

  7. 并发编程 13—— 线程池的使用 之 配置ThreadPoolExecutor 和 饱和策略

    Java并发编程实践 目录 并发编程 01—— ThreadLocal 并发编程 02—— ConcurrentHashMap 并发编程 03—— 阻塞队列和生产者-消费者模式 并发编程 04—— 闭 ...

  8. HTML 段落<p>标签

    <p> 标签定义段落. p 元素会自动在其前后创建一些空白.浏览器会自动添加这些空间,您也可以在样式表中规定. 段间距IE默认为19px,通过p的margin-top属性设置FF默认为1. ...

  9. javascript 特殊的一些知识

    基础知识 1.注释/**/ 块注释,与正则表达式有冲突,不安全. 2.js数字类型只有一个,即为64位的浮动值 3.NaN是一个数值,他不能产生正常结果的运算结果.NaN不等于任何值,包括它自己.is ...

  10. 困扰我多年的Connection reset问题

    第一次出现:是thrift的python client去请求server,发现偶尔出现这个问题 第二次:接入第三方的api,去请求数据时,发现一个接入方的api第一次总是报这个错,当时又没有做处理,导 ...