猿问

request.getparameter("xxxx");属于哪个类?

当我调用getparameter方法时
应该声明ServletRequest对象
还是HttpServleRrequest对象

LEATH
浏览 813回答 2
2回答

绝地无双

两个都是接口,getparameter是由ServletRequest接口定义的,HttpServletRequestWrapper实现的。其实你声明哪个都无所谓,因为你不可能自己去new ServletRequest();这都是每次请求时候,servlet自己生成的,里面包含请求的各种参数。只是声明ServletRequest时,方法少的。声明HttpServleRrequest时,方法多点。说的已经很详细了,不需要再补充servlet是怎么生成HttpServletRequestWrapper对象的吧。

达令说

ServletRequest 是接口 HttpServleRrequest是实现了ServletRequest 接口的对象。一般按照面向对象设计模式的原则,定义变量时尽量定义接口。如果只是调用getparameter方法还是建议定义成接口ServletRequest ,当时你要定义成HttpServleRrequest也没什么不对
随时随地看视频慕课网APP
我要回答