servlet中參數(parameter)和屬性(Attribute)的區別

轉自:http://xiebh.iteye.com/blog/1006324

在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對象中。 
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章