JSP实现数据传递

JSP内置对象

九种对象简介:

  1. out对象:用于向客户端、浏览器输出数据。
  2. request对象:封装了来自客户端、浏览器的各种信息。
  3. response对象:封装了服务器的响应信息。
  4. exception对象:封装了jsp程序执行过程中发生的异常和错误信息。
  5. config对象:封装了应用程序的配置信息。
  6. page对象:指向了当前jsp程序本身。
  7. session对象:用来保存会话信息。也就是说,可以实现在同一用户的不同请求之间共享数
  8. application对象:代表了当前应用程序的上下文。可以在不同的用户之间共享信息。
  9. pageContext对象:提供了对jsp页面所有对象以及命名空间的访问。

JSP实现数据传递-表单为例

根据表单名称获取提交的数据信息:

request.getParameter(“name”)返回的是一个String

获取表单对应多个值时的请求数据信息:

request.getParameterValues(“name”)返回的是一个String数组需要遍历

解决中文乱码问题

< form action=”Welcome.jsp” method=”get” >

表单get方式提交,中文乱码处理-治标:
request.getParameter(“name”)返回的是一个String

返回的值.getByte(“ISO-8859-1”)=byte[] 数组名 以ISO-8859-1的格式打散

String name=new String(数组名,”格式”)或者

new String(返回的值.getByte(“ISO-8859-1”),utf-8)返回是一个String类型

表单g所有方式提交,中文乱码处理-治本:

修改Tomcat配置文件

配置tomcat\conf\server.xml文件

connectionTimeout=”20000”

redirectPort=”8443” URIEncoding=”utf-8”/>
如图:
这里写图片描述

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

request.setCharacterEncoding(“utf-8”)

response.setCharacterEnconding(“utf-8”)

在请求中存取属性

在请求中保存属性:

public void setAttribute(String name,Object o)

request.setAttribute(mess,”注册失败”)

在请求中获取属性:

public Object getAttribute(String name)

注意:
1.在使用属性值的时候要做非空判断,否则会出现空指针
2.它的返回值类型是Object类型,需要做数据类型的转换

转发与重定向:

转发:

RequestDispatcher对象
forward()方法

1.requestDispatcher(“url”).forward(request,response)
< jsp:forward page=”url” >

重定向:

response.sendRedirect(request.getContextPath(到上文)+”url”)

通过编码URLEncode.encode(String,格式)
或者解码URLDecode.Decode(String,格式)

作用域问题:
request作用域:在一次请求的范围内
response作用域:在二次请求的范围内

转发和重定向的区别:
  1. 行为区域的区别:转发是服务器端的行为区域,重定向是客户端行为区域
  2. URI:转发不会发生变化,重定向会改变地址栏的URL
  3. 请求问题:转发是一次请求,重定向是两次请求
  4. 跳转区域问题:转发不可以跳转到第二个项目,重定向可以地址会发生改变(跳转到第二个项目)
  5. 携带请求问题:转发可以携带request相关信息,重定向不会携带

附:
而重定向获取信息的方法:使用内置对象session

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值