属性(attribute)和 参数(parameter)

在JAVA WEB开发中经常遇到获取请求参数的值和在request对象中set或者get属性,初学者往往容易混淆,那么二者之间关系到底如何呢?下面是个人的总结:

区别:

    • 来源不同:    参数(parameter)是从客户端(浏览器)中由用户提供的,若是GET方法是从URL中

 

    • 提供的,若是POST方法是从请求体(request body)中提供的;

 

    •   属性(attribute)是服务器端的组件(JSP或者Servlet)利用requst.setAttribute()设置的
    • 操作不同:    参数(parameter)的值只能读取不能修改,读取可以使用request.getParameter()读取;

 

    •   属性(attribute)的值既可以读取亦可以修改,读取可以使用request.setAttribute(),设置可使用request.getAttribute()
    • 数据类型不同:    参数(parameter)不管前台传来的值语义是什么,在服务器获取时都以String类型看待,并且客户端的参数值只能是简单类型的值,不能是复杂类型,比如一个对象。

 

    •    属性(attribute)的值可以是任意一个Object类型。




共同点
二者的值都被封装在request对象中。

转载于:https://www.cnblogs.com/Struts2/archive/2013/05/11/3073543.html

你可能感兴趣的:(属性(attribute)和 参数(parameter))