聊一聊Srevlet ①

Servlet的初心
在jsp技术没有出现之前,用来写服务器的动态网页。有了jsp之后,不再使用Servlet编写动态网页,而是用来做控制器使用。

Servlet的改变
有了jsp之后,Servlet就不再用来生成动态页面,也就是很少在servlet 中写out.print()这样的代码,凡是需要输出动态内容的代码,都在jsp中实现。

Servlet的主要作用发生了变化, 用来接收请求,处理请求,跳转到不同的jsp页面。

因此我们需要学习两个很重要的知识点:
Servlet如何获得jsp提交过来的请求数据?
Servlet如何跳转到不同的页面?

Servlet类的doxxx方法,都有两个参数;分别是HttpServletRequest,HttpServletResponse,分别称为请求和响应

这两个类型都是接口,具体实现类是由容器实现的,可以用代码验证。
这两个类型都是接口,具体的实现类是由容器实现的。
在FirstServlet的doGet方法中分别打印syso(request和response)
会输出org.apache.catalina,connecter.RequestFacade@101f23d


理解请求对象

HttpServletRequest接口
请求的具体实现类是容器实现的,但是类型是统一的接口,即HttpServletRequest,因此,请求对象可以调用该接口及其父接口中的所有方法,可以查API。

HttpServletRequest接口中获得请求中数据的方法
getParameter:通过name获得某请求参数的value
getParameterValues:通过name获得某请求参数的所有value,一般用于checkbox,或多选select等

获得多值请求参数
修改index.jsp中的表单,加入checkbox的name都是style

这里写图片描述

在FirstServlet中,加入代码获得名字为style的请求参数,由于可能多选,有多个style 值所以应该使用请求接口中的getParameterValues方法,返回字符串型数组

String[] styles=request.getParameterValues(“style”);
for(String s:styles){
out.println(“登陆方式:”+s+“
”)
}
String[] styles=request.getParameterValues(“style”);
for(String s:styles){
“登陆方式”+s
}
总结
HttpServletRequest接口中有两个获取参数的方法
getParameter:返回一个String值,获得单值的请求参数
getParameterValues:返回一个String数组,获得多值的请求参数

注意的是
这两个方法返回的都是字符串,实际编程中,常常需要进行类型转换。例如:使用Integer.parseInt转换成int Double.parseDouble转换成double,Timestamp.valueOf转换成Timestamp等。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值