JSP练习

使用 eclipse开发jsp
准备工作
使tomcat和eclipse关联
配置运行时环境
在导航菜单 window Preferences下的Server 中的 reuntimeEnvironme 中 add自己的tomcat
新建一个Dynamic Web Project 项目 注意不要直接Finish 完成 需要在最后一步勾选生成。xml文件 这个是在网页运行必须的;
然后新建JSP文件 在web content下,选择控制同级的server面板创建服务器,
完成后F3,设置Server Location 选择第二个,使eclipse的服务器关联到自身的tomcat
注意:修改时deploy Path中的 文件名要和自己tomcat的一致 否则会自动创建一个别的文件夹
将jsp 的文件编码修改为 UTF-8,在window preference中查询jsp 然后修改编码使得今后所有jsp文件创建时都是utf-8编码

	jsp的页面元素
		a:页面脚本(%%内部写	 java代码)
				1包含 <%        % > 局部变量
				2.<%!       %>	全局变量
				3.<%=   	%> 输出表达式 ,里面的内容会打印在网页页面
				注意:在脚本中换行println不行,需要使用html标签 《br》
		b :指令
			<%@page  属性名%> 指定的属性
				例如 import 导入 等价java中的import
	注释 html注释  <!--    --> ,java注释   //,jsp注释 <%--- ------%>
	在网页查看源码时候 html注释会显示在网页源代码中,另外两个不会显示

JSP 九大内置对象

out :向客户端输出内容
request:
客户端发送的所有请求信息,
常见方法如下:
        getParameter(String  key)  
        根据请求的key 获取内容value 例如 key =name value=张三
        getParameterValues(String  key)   
        根据请求的key 获取内容values 多个value时使用
        void setCharacterEncodin(“utf-8”) 
        设置请求字符集 tomcat7 不是utf8, tomcat8之后是 utf8
        getRequestDispatcher(“b。jsp”).forword(request,response) 
        以请求转发方式        跳转页面 A->B
        getServletContext() 获取ServletContext对象


response
	常用方法:
   add Cookie(Cookie cook) 向服务器增加Cook对象
   sendRedirec() 请求跳转(重定向)
   setcontentType() 设置服务器响应编码

     回应,服务器端对用户请求的回应,
     两种页面跳转方式
     重定向方式,可以跳转,会丢失数据
     response.sendRedirect("success.jsp");
	请求转发方式,不会丢失数据,但页面地址没有改变		
     request.getRequestDispatcher("success.jsp").forward(request, response);
	在




	session(服务端对象)会话
	   session的常用方法
	    getId() 获取SEssionID
	    isNew() 判断是否第一此请求
	    invalidate() 注销当前会话
	    getAttribute() 获取对象信息
	    setAttribute() 设置对象信息
	
		客户端向服务器端发送请求,如果客户端Cookie没有JESSIONID和服务器的sessionId对应
		那么将创建session 生成sessionid,在返回的Cookie对象中转换为JESSIONID,
		第二次访问时会直接识别,进入对应的会话,
		不同的浏览器对服务器发送请求识别为不同的会话,会产生不同的session对象
		关于Session共享,
		即在同一个session会话中不同的jsp页面可以共享客户端传入的request对象





	Cookie (客户端对象),不是内置,需要new创建,
	Cookie name=value  键值对,
	构造如下:Cookie(String key, String value),常见方法 getName,getValue
	流程: 服务器端准备Cookie,通过页面跳转,客户端获取Cookie
	注意:客户端增加对象时 Resqonse。addCookie,同时会自动添加一个JASSONID对象
	      服务端获取对象时  request。getCookie,获取到的Cookie是所有对象是一个数组
		将修改好的Cookie转发出去可以使用重定向或者请求转发
	
pageContext
applicton
config
page
exception

关于字符集乱码:
tomcat7 默认是非UTF-8 因此要进行修改 tomcat8以后就默认是utf-8
如果使用post 请求时修改字符集需要在第一次跳转后的页面进行修改
添加如下代码request.setCharacterEncoding("utf-8");
如果时get请求需要去Tomcat 配置文件的server。xml中修改即修改端口号的那个标签中添加属性 URIEconding="utf-8“如下

在这里插入图片描述

Session 执行原理 与Cookie关系

在这里插入图片描述

request请求只在同一次请求时有效
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值