转发和重定向

文章目录

      • JSP数据交互(一)
        • 关于中文乱码问题
        • 转发和重定向
        • 会话 session
        • 关于web.xml问题
        • include指令

JSP数据交互(一)

关于中文乱码问题

1.JSP页面本身的编码

page pageEncoding="UTF-8"

2.浏览器渲染页面时采用的编码

​ 一旦一种编码格式已指定,另外一种编码格式如果不进行指定,默认采用已经指定的编码格式

contentType="text/html;charset=UTF-8"

3.服务器保存数据时采用的编码(request),默认编码为ISO-8859-1不支持中文

//post
request.setCharacterEncoding("UTF-8");
//get-1(常用)
String name = request.getParamter("name");
name = new String(name.getBytes("ISO-8859-1"),"UTF-8");
//get-2(不常用)
//修改tomcat-conf-server.xml在

转发和重定向

转发

  • 在服务器端发挥作用,将同一个请求在服务器资源之间进行传递
  • 地址栏:不会转向跳转地址
  • request中的参数:不会丢失,跳转地址也可以访问到

重定向

  • 在客户端发挥作用,客户端重新发送新的请求页面
  • 地址栏:显示跳转地址
  • request参数:丢失,跳转地址无法访问

会话 session

会话:同一个浏览器在一段时间内(从第一次请求到session对象失效)与web服务器一连串相关的交互过程

session与窗口的关系

​ 1.访问同一项目时,不同浏览器的session对象不同,同一浏览器的不同窗口session对象相同

​ 2.通过超链接打开子窗体时,子窗体和父窗体的session相同

session对象的失效

1.手动失效 --session对象立即失效

<%
    session.invalidate();
%>

2.超时失效 --以秒为单位

<%
	session.setMaxInactiveInterval(10);    
%>

3.在tomcat或项目的web.xml增加配置 --以分钟为单位

<session-config>
        <session-timeout>1session-timeout>
session-config>

关于web.xml问题

项目A.web.xml / 项目A.web.xml / tomcat-web.xml

tomcat-web.xml + 项目A-web.xml = 合并 -->对项目A有效

1.如果有配置重复的选项,项目A-web.xml

2.tomcat-web.xml是全局配置 项目A-web.xml是针对项目A的配置

3.项目B-web.xml 和 项目A-web.xml没有关系

include指令

页面A 引入页面B的代码

include指令的原理(先合并jsp在翻译java):

a.jsp + b.jsp = c.jsp -->翻译成 c_jsp.java -->编译成c_jsp.class -->执行

pageContext的include方法的原理(先翻译执行再合并):

b.jsp–>b.java–>编译运行–>结果+a.jsp–>a.java–>a.class–>执行

<%@include file="loginControl.jsp";	//page page

<%
    pageContext.include("loginControl.jsp");	//page null
%>

ontrol.jsp"; //page page


~~~ java
<%
    pageContext.include("loginControl.jsp");	//page null
%>

你可能感兴趣的:(前端,javascript)