首页 > 代码库 > JSP知识点汇总
JSP知识点汇总
有几种方法可以实现服务器内部跳转?
- 使用request对象提供的方法:request.getRequestDispatcher(String URI).forward(ServletRequest request,ServletResponse response);
- 使用pageContext对象提供的方法:pageContext.forward(String URI);
- 使用JSP动作标签:<jsp:forward page="URI" />;
有几种方法可以实现JSP页面的包含操作?
- 使用JSP指令 <%@ include file="URI" />;
- 使用request对象提供的方法:request.getRequestDispatcher(String URI).include(ServletRequest request,ServletResponse response);
- 使用pageContext对象提供的方法:pageContext.include(String URI);
- 使用JSP动作标签:<jsp:include page="URI" />;
上述的四种方法存在以下差异:
- 方法1实现的是静态包含,这是一种代码级的包含,在解析JSP页面时,被包含页面不会单独生成servlet,其生成的代码将会被直接集成到主页面生成的servlet中。方法2、3、4实现的是动态包含,被包含页面和主页面单独生成各自的servlet,在处理请求,输出响应时,将被包含页面的输出内容合并到主页面的输出中来。
- 方法1、3、4中,被包含页面和主页面内容的输出顺序遵循代码顺序,在前的先输出,在后的后输出。方法2中,先输出被包含页面的内容,然后才会输出主页面的内容。
如何解决JSP页面的中文乱码问题?
- 解决URL中传递中文参数乱码问题:修改server配置文件,以Tomcat为例,编辑“%CATALINA_HOME%/conf/server.xml”,在对应的连接配置标签上添加属性URIEncoding=“UTF-8”。在从request对象获取parameter之前,设置request对象的编码方式为“UTF-8”;
- 解决表单中传递中文参数乱码问题:设置JSP页面的属性,<%@ page contentType="text/html;charset=utf-8" />,在从request对象获取parameter之前,设置request对象的编码方式为“UTF-8”;
- 解决Cookie中传递中文参数乱码问题:在向Cookie对象中添加中文参数时,使用java.net.URLEncoder.encoding(String value,String charset)方法对参数进行编码;在从Cookie对象中获取中文参数时,使用java.net.URLDecoder.decoding(String value,String charset)方法对参数进行解码。
JSP知识点汇总
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。