JavaWeb学习笔记——JSP内置对象 上(4)

(一)JSP内置对象:

1.1 简介:

JSP内置对象是Web容器创建的一组对象,不使用new关键字就可以使用的内置对象,比如:下面的out就是内置对象,并没有使用new关键字就可以直接使用。

<%

int[] value={60,70,80};

for(int i:value){

     out.println(i);

}

%>

1.2 JSP九大内置对象:

——out                                ——application                                ——exception

——response                     ——Page                                         ——config

——request                       ——pageContext                              ——session

JavaWeb学习笔记——JSP内置对象 上(4)_第1张图片

1.2 Web程序的请求响应模式:

用户发送请求(request)

服务器给用户响应(response)

如下图:

JavaWeb学习笔记——JSP内置对象 上(4)_第2张图片

举个栗子:

以登录中国大学mooc为例:说明了web应用程序是基于请求和响应的这种模式

JavaWeb学习笔记——JSP内置对象 上(4)_第3张图片
点击登录按钮,向服务器发送请求,在请求对象中封装了用户名和密码


JavaWeb学习笔记——JSP内置对象 上(4)_第4张图片
服务器端接收用户的请求,判断用户名和密码是否正确之后,给客户端发送响应页面

1.3 out对象

什么是缓冲区:

缓冲区:Buffer,就是内存的一块区域用来保存临时数据

就好像,我们煮了一锅粥,如果我们放在锅里面吃的话肯定很麻烦,如果我们把锅里的粥盛出来一点在碗里吃,是不是会很方便,吃得很爽呢,当然我们也是可以使用勺子,就会更方便吃,在这里的碗和勺子这些容器就是缓冲区。

Out对象:

out对象是JspWriter类的实例,是向客户端输出内容常用的对象

常用方法如下:

——void println() 向客户端打印字符串

——void clear() 清除缓冲区的内容,如果在flush之后调用会抛出异常

——void clearBuffer() 清除缓冲区的内容,如果在flush之后调用不会抛出异常

——void flush() 将缓冲区内容输出到客户端

——int getBufferSize() 返回缓冲区以字节数大小,如果不设缓冲区则为0

——int getRemaining() 返回缓冲区还剩多少可用空间

——boolean isAutoFlush() 返回缓冲区满时候,是自动清空还是抛出异常

——void close() 关闭输出流

举个栗子:

打印一首唐诗《静夜思》:

JavaWeb学习笔记——JSP内置对象 上(4)_第5张图片
JavaWeb学习笔记——JSP内置对象 上(4)_第6张图片
没有调用flush()缓冲区的剩余
JavaWeb学习笔记——JSP内置对象 上(4)_第7张图片
调用flush()之后缓冲区剩余增多
JavaWeb学习笔记——JSP内置对象 上(4)_第8张图片
因为调用了在flush()之后调用了clear()报错,后面的内容无法输出但是如果调用clearbuffer()不会有影响

1.4 get与pos区别

表单的提交方式有两种:get和post

——get:

以明文的方式通过URL提交数据,数据在URL中可以看到,就是浏览器的地址栏中可以看到。提交的数据最多不超过2kb。安全性较低,但是效率比post方式高。适合提交数据量不大,安全性不高的数据,比如:搜索、查询功能。

——post:

将用户提交的信息封装在HTML、HEADER内。适合数据量大,安全性高的用户信息。比如:注册、修改、登录、上传等功能。

举个栗子:

一个简单的登录表单先使用get

JavaWeb学习笔记——JSP内置对象 上(4)_第9张图片
login.jsp


JavaWeb学习笔记——JSP内置对象 上(4)_第10张图片
dologin.jsp
JavaWeb学习笔记——JSP内置对象 上(4)_第11张图片
JavaWeb学习笔记——JSP内置对象 上(4)_第12张图片
使用get在地址栏上会显示输入的用户名和信息,不安全
JavaWeb学习笔记——JSP内置对象 上(4)_第13张图片
使用post,在地址栏上是不会出现输入的用户名和密码的,安全

1.5 request对象

客户端的请求   信息被封装在request对象中,通过它才能了解到客户的需求,然后做出响应。它是HttpServletRequest类的实例。request对象具有请求域,即完成客户端的请求之前,该对象一直有效。

request常用方法:

——String getParameter(String name) 返回name指定参数的参数值(获得单个值)

——String[] getParameterValues(String name) 返回包含参数name的所有值的数组(获得集合)

——void setAttribute(String,Object) 存储此请求中的属性

——object getAttribute(String,Object) 返回指定属性的属性值

——String getContentType() 得到请求体的MIME类型

——String getProtocol() 返回请求用的协议类型及版本号

——String getServerName() 返回请求的服务器主机名

举个栗子:

用户注册

JavaWeb学习笔记——JSP内置对象 上(4)_第14张图片
request.jsp
JavaWeb学习笔记——JSP内置对象 上(4)_第15张图片
reg.jsp
JavaWeb学习笔记——JSP内置对象 上(4)_第16张图片
JavaWeb学习笔记——JSP内置对象 上(4)_第17张图片

今天脖子疼QAQ,未完,待续。。。。

你可能感兴趣的:(JavaWeb学习笔记——JSP内置对象 上(4))