2021-01-09 JavaWeb jsp执行过程 声明变量和方法 实现数据传递和保存 转发与重定向 response request session cookie application

JavaWeb

C/S模式:
		客户端   服务器C(Client)/S(Server)
B/S模式:
		浏览器  服务器B(Broswer)/S(Server)

在这里插入图片描述

Web服务器

1、是可以向发出请求的浏览器提供文档的程序
2、提供网上的信息浏览服务
常用的Web服务器
Microsoft:IIS
Apache:Tomacat       开源免费,小型项目
Oracle:WebLogic      商用较多
IBM:WebSphere       商用较多
Nginx      处理高并发,稳定
。。。

Tomcat服务器

1、Apache Jakarta的开源项目
2、轻量级应服务器
3、开源、稳定、资源占用小

在这里插入图片描述

操作Tomcat注意事项

(1)startup.bat启动后,不许关闭,一定是最小化
(2)启动时,窗口一闪而过问题:
配置JDK:系统环境变量path:C:\Program Files\Java\jdk1.7.0_80\bin
JAVA_HOME:C:\Program Files\Java\jdk1.7.0_80
(3)http://localhost:8080/ 端口号修改:conf/server.xml中的port

在Tomcat中部署静态网页

将网页资源复制到webapps文件夹中,通过http://localhost:8080/文件名称/index.html

JSP概述

JSP(Java Server Pages)
		运行在服务器端的Java页面
		使用HTML嵌套Java代码实现

在这里插入图片描述

使用JSP实现输出

oage指令

通过属性定义了JSP的特性,实现与JSP容器的通信
<%@ page language="属性值" import="属性值" pageEncoding=“”属性值“”%>
属性说明
language指定JSP页面使用的脚本语言
import通过该属性来引用脚本语言中使用到的类文件
pageEncoding用来指定JSP的字符编码方式

out对象

1、out对象时JSP的内置对象
			无需实例化即可使用
2、实现数据的输出显示

out对象的方法

属性说明
print想页面输出显示
println向页面输出显示,在结尾处添加换行

添加注释

1、HTML注释:<!--HTML注释-->
2、JSP注释:<%--JSP注释--%>
3、JSP脚本中注释:<%//单行注释%>、<%/*多行注释*/%>

JSP执行过程

在这里插入图片描述

JSP声明全局变量和方法

全局变量和方法写在<%! 全局变量或方法%>

Web程序调试和排错

404错误–找不到访问的页面或资源

	1、运行时,URL输入错误
	2、将页面放在WEB-INF下
	3、外部启动Tomcat,未部署项目

500错误–JSP页面代码有误

JSP页面代码有错误

JSP实现数据传递和保存

获取表单提交的数据
		请求对象:request
				public String getParameter(String name)
获取同名的多个参数
				request.getParameterValues("mailld");

示例:

//HTML代码:
	<inout type="text" name="userName">
//JSP代码:
	String userNamerequest.getParameter("userName");
//获取同名多个参数
String[] maillds = request.getParameterValues("mailld");
if(maillds!=null&&maillds.length!=0){
	//循环maillds访问提交的数据
}else{
	//未提交与参数mailld相关的数据
}

get与post区别

在这里插入图片描述

表单post方式提交中文乱码处理

request.setCharacterEncoding("utf-8");
response.setCharacterEncoding("utf-8");

表单get方式提交中文乱码处理

在这里插入图片描述

在请求中存取属性

在请求中保存属性

public void setAttribute(String name,Object o)
request.setAttribute("mess","注册失败");

请求的常用方法:
在这里插入图片描述

在请求中获取属性

public Object getAttribute(String name)
1、在使用属性值的时候要做非空判断,否则会出现空指针异常
2、它的返回值类型是Object类型,需要做数据类型的转换

转发与重定向

转发与重定向的区别:(重定向是客户端行为,转发是服务器行为)
在这里插入图片描述

转发

1、RequestDispatcher对象
2、forward()方法
	request.getRequestDispatcher("url").forward(request,response);
	<jsp:forward page="url">

在这里插入图片描述

重定向

将用户请求重新定位到一个新的URL
response.sendRedirect("url");

在这里插入图片描述

jsp的内置对象

1、请求对象:request
2、输出对象:out
3、响应对象:response
4、用用程序对象:application
5、会话对象:session
6、页面上下文对象:pageContext
7、页面对象:page   :相当于java中的this,作用域仅限于当前页面
8、配置对象:config
9、异常对象:exception

session

setAttribute()作用域试一次会话
getAttribute()
会话:一个会话就是浏览器和服务器之间的一次通话,会话可以在多次请求中保存和使用数据
服务器端使用的记录客户端状态的机制--sessionId
会话的清除和过期:
	1、程序主动清除session数据:
				a.设置会话失效:session.invalidate()
				b.移除会话的一个属性:session.removeSttribute()
	2、服务器主动清除长时间没有再次发出请求的session
				a、在jsp中设置会话过期时间:session.setMaxInactivaInterval(int interval)【单位是秒】
				b、在xml中设置会话过期时间:
				<session-config>
						<session-tiomout>30</session-tiomout>【单位是分钟】
				</session-config>

在这里插入图片描述

cookie

1、跟踪用户的整个会话
2、通过在客户端记录信息
3、以文件方式保存数据
			添加数据:response.addCookie(Cookie cookie)
			获取数据:Cookie[] getCookies()
			设置有效期:setMaxAge(int expiry)【单位为秒,expiry设置为0,相当于删除Cookie,默认是浏览器关闭后失效】

application

1、作用域在于整个项目中,除非是服务器关闭重启
常用方法:setAttribute(String name,Object object)
					Object getAttribute(String name)

在这里插入图片描述

request、session、application对比

在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值