1.JSP内置对象:JSP内置对象是 Web 容器创建的一组对象,不用通过手动new就可以使用
2.JSP9大内置对象:
         对象名称              类型             
    request (请求对象)       javax.servlet.ServletRequest 
    response响应对象)       javax.servlet.SrvletResponse
    out 输出对象)          javax.servlet.jsp.JspWriter 
    session 会话对象)      javax.servlet.http.HttpSession
    application应用程序对象)    javax.servlet.ServletContext
    page(页面对象)          javax.lang.Object
    pageContext页面上下文对象) javax.servlet.jsp.PageContext
    config配置对象)        javax.servlet.ServletConfig
    execption例外对象)      javax.lang.Throwable
3.JSP内置对象:out

<%
int[] value = { 60, 70, 80 };
for (int i : value) {
//将输出信息输出到控制台
System.out.println("控制台:"+i);
//out作为JSP最简单的内置对象,主要用于将信息输出到页面上
out.println(i); }
%>

4.JSP内置对象:request:客户端向服务器端发送请求数据,我们通过request对象接收数据

<%
//获取数据之前解决乱码 解决表单POST提交方式的乱码
request.setCharacterEncoding("UTF-8"); //request用于获取客户端向服务器提交的数据
String username=request.getParameter("username");
String password=request.getParameter("password"); //获取表单组件对应多个值时的请求数据
String [] hobbys=request.getParameterValues("hobby");
for(int i=0;i<hobbys.length;i++){
//获取数据之前解决乱码 解决表单Get提交方式的乱码
/* hobbys[i]=new String(hobbys[i].getBytes("ISO-8859-1"),"UTF-8"); */
out.print(hobbys[i]);
}
out.println();
out.println(username+"\t"+password); //性别
String sex=request.getParameter("sex");
out.println(sex); //下拉框地址
String address=request.getParameter("address");
out.println(address);
%>

POST和GET的区别:
1.从安全角度考虑 post更安全一些 get不安全
2.post方式提交数据可以提交大概几GB的数据 get方式提交数据最大也就到几KB

5.解决乱码的方案:
  post乱码解决:request.setCharacterEncoding("UTF-8");
  get乱码解决: hobbys[i]=new String(hobbys[i].getBytes("ISO-8859-1"),"UTF-8");

6.HTTP状态码:
  1** 信息,服务器收到请求,需要请求者继续执行操作
  2** 成功,操作被成功接收并处理
  3** 重定向,需要进一步的操作以完成请求
  4** 客户端错误,请求包含语法错误或无法完成请求
  5** 服务器错误,服务器在处理请求的过程中发生了错误

404和500错误状态码配置页面:
  在当前项目的web.xml当中加入如下配置信息:

<error-page>
<error-code>500</error-code>
<location>/500.jsp</location>
</error-page>
<error-page>
<error-code>404</error-code>
<location>/404.jsp</location>
</error-page>

7.response:响应
  转发(是在服务器内部进行,无法访问到除内部以外的资源):

request.getRequestDispatcher("/response/welcome.jsp").forward(request, response);

  重定向(全路径):

response.sendRedirect("/Chap02/response/Login.jsp");

区别:

  1.转发是在服务器内部进行,重定向是客户端完成的,需要写入全路径,地址xxxxxxx
  2.转发请求1次,其余的操作都是在服务器内部进行的;重定向请求至少2次,其余的请求命令客户端再次请求一个URL
  3.转发可以携带这次请求的数据,重定向不带数据

JSP数据交互(一)的更多相关文章

  1. JSP数据交互

    JSP数据交互   一.jsp中java小脚本 1.<% java代码段%> 2.<% =java表达式%>不能有分号 3.<%!成员变量和函数声明%>二.注释 1 ...

  2. #学习笔记#JSP数据交互

    #学习笔记#JSP数据交互 数据库的使用方式:   当用户在第一个页面的查询框输入查询语句点提交的时候我们是用什么样的方式完成这个查询的? 答:我们通过在第一个页面提交表单的形式,真正的数据库查询时在 ...

  3. JSP/Servlet开发——第二章 JSP数据交互(一)

    1. JSP内置对象:JSP内置对象是 Web 容器创建的一组对象:   ●JSP常用的内置对象:out.request.application.session.response等: ●内置对象不需要 ...

  4. jsp数据交互(一).2

    01.什么是JSP内置对象(jsp核心)? Java 内置对象 Java  作用域 解析:jsp内置对象是web容器创建的一组对象.我们都知道tomcat这款软件可以看成是一种web容器,所以我们可以 ...

  5. 第二章 jsp数据交互(一)

    JSP如何处理客户端的请求? 解析:通过jsp内置对象 表单数据被提交到了jsp页面! 什么是JSP内置对象(jsp核心)? Java 内置对象 Java  作用域 解析:jsp内置对象是web容器创 ...

  6. JSP———数据交互【1】

    JSP的内置对象 不用声明就可以在JSP页面中使用 request对象 内置对象 request 封装了用户提交的信息,主要用于处理客户端请求 <FORM action="tom.js ...

  7. JSP数据交互(二)和Servlet基础

    01.Application原理与应用 01.application对象的作用域范围是整个应用服务,而它在应用中所承担的责任就类似于一个全局变量.只要服务启动,则application对象就会存在. ...

  8. jsp数据交互(一),九大内置对象

    九大内置对象 九大内置对象 内置对象 类型 说明 作用域 request javax.servlet.ServletRequest 请求对象——在 一次请求/一个Request请求周期 中传递数据,请 ...

  9. JSP数据交互——九大内置对象及其方法详解(一)

    ①既然说到JSP内置对象,那么什么是JSP内置对象呢? 解析:JSP内置对象,就是在编写JSP页面时,不需要做任何声明就可以直接使用的对象. 如下代码片段:  <% int[]  value  ...

  10. JSP数据交互(一)

    1.JSP内置对象 请求对象:request 输出对象:out 响应对象:response 应用程序对象:application 会话对象:session 页面上下文对象:pageContext 页面 ...

随机推荐

  1. Android前沿技术

    一.热升级Tinker源码解析与手写二.热修复阿里百川Sophix内核原理三.App Instantgoogle8.0 类似热更新技术原理与实战四.强制更新1.银行应用非对称加密对称加密五.组件化框架 ...

  2. Spark学习之路(八)—— Spark SQL 之 DataFrame和Dataset

    一.Spark SQL简介 Spark SQL是Spark中的一个子模块,主要用于操作结构化数据.它具有以下特点: 能够将SQL查询与Spark程序无缝混合,允许您使用SQL或DataFrame AP ...

  3. chrome如何查看cookie

    以mac为例: 第一步:点击chrome的偏好设置 第二步:点击如下图所示的最下面的高级 第三步:点击内容设置,如下所示 第四步:点击cookie,就会出现查看所有cookie和网站数据

  4. 100天搞定机器学习|Day2简单线性回归分析

    第一天机器学习100天|Day1数据预处理,我们学习了数据预处理.知道了,数据预处理是机器学习中最基础和最麻烦,未来占用时间最长的一步操作.数据预处理一般有六个步骤,导入库.导入数据集.处理缺失值.分 ...

  5. IO解惑:cephfs、libaio与io瓶颈

    最近笔者在对kernel cephfs客户端进行fio direct随机大io读测试时发现,在numjobs不变的情况下,使用libaio作为ioengine,无论怎么调节iodepth,测试结果都变 ...

  6. Oracle常用的一些 数据字典 转https://www.cnblogs.com/neozhu/archive/2008/07/22/1248422.html

    Oracle常用数据字典表   Oracle常用数据字典表      查看当前用户的缺省表空间 SQL>select username,default_tablespace from user_ ...

  7. vue.js打包部署线上

    你完成了工程开发,需要部署到外网环境,要进行下面的步骤: 一.首先你要购买一个服务器或者有自己的服务器.我介绍给大家的一个免费的服务器:http://free.3v.do/index.html可以免费 ...

  8. 基础数据类型,格式化输出,以及for循环的使用

    基础数据类型总览 int :数字类型,可以+-*/等等操作 str:字符串类型,存储少量的数据,+*int 切片等 bool :里面包含True,False这两种值,用来判断真假. list :列表 ...

  9. POI自动调整列宽支持中文

    /** * @Description:表格自适应宽度(中文支持) * @Author: * @param sheet sheet * @param columnLength 列数 */ private ...

  10. 什么是JDK什么是JRE?JDK和JRE的关系

    什么是JDK什么是JRE?JDK和JRE的关系 我们看看来自百度百科的解释: JDK是 Java 语言的软件开发工具包,主要用于移动设备.嵌入式设备上的java应用程序.JDK是整个java开发的核心 ...