`

getAttribute & getParameter

    博客分类:
  • Java
阅读更多


1.getAttribute是取得jsp中 用setAttribute設定的attribute
2.parameter得到的是string;attribute得到的是object
3.request.getParameter()方法传递的数据,会从Web客户端传到Web服务器端,代表HTTP请求数据;
request.setAttribute()和getAttribute()方法传递的数据只会存在于Web容器内部,在具有转发关系的Web组件之间 共享。即request.getAttribute()方法返回request范围内存在的对象,而request.getParameter()方法是 获取http提交过来的数据。


JSP中getParameter与getAttribute有何区别?

getParameter得到的都是String类型的。或者是http://a.jsp?id=123中的123,或者是某个表单提交过去的数据。
getAttribute则可以是对象。

getParameter()是获取POST/GET传递的参数值;
getAttribute()是获取对象容器中的数据值;

getParameter:用于客户端重定向时,即点击了链接或提交按扭时传值用,即用于在用表单或url重定向传值时接收数据用。
getAttribute:用于服务器端重定向时,即在sevlet中使用了forward函数,或struts中使用了mapping.findForward。getAttribute只能收到程序用setAttribute传过来的值。

getParameter()是获取POST/GET传递的参数值;
getAttribute()是获取SESSION的值;

另外,可以用setAttribute,getAttribute发送接收对象.而getParameter显然只能传字符串。

setAttribute 是应用服务器把这个对象放在该页面所对应的一块内存中去,当你的页面服务器重定向到另一个页面时,应用服务器会把这块内存拷贝另一个页面所对应的内存中。 这样getAttribute就能取得你所设下的值,当然这种方法可以传对象。session也一样,只是对象在内存中的生命周期不一样而已。

getParameter只是应用服务器在分析你送上来的request页面的文本时,取得你设在表单或url重定向时的值。

getParameter 返回的是String, 用于读取提交的表单中的值;

getAttribute 返回的是Object,需进行转换,可用setAttribute设置成任意对象,使用很灵活,可随时用;
 

some opnions:

request.getAttribute():是request时设置的变量的值,用request.setAttribute("name","您自己的值");来设置值,

request.getParameter():提取发送过来的参数如:本网页 http://writeblog.csdn.net/PostEdit.aspx?entryId=2543234
request.getParameter("entryId")=="2543234"
request.getParameter 是用来接受来自get方法或post方法的参数只能接受java.lang.String 也就是说String hotel_id = request.getParameter("hotel_id");

request.getAttribute 是用来接受来自servlet的变量或Action(其实Action就是特殊的Servlet) 在Action中,request.setAttribute("ret",ret); 只能接受java.lang.Object 也就是说List ret = (List)request.getAttribute("ret");

如果你只用JSP,根本用不到request.getAttribute()

 
request.getAttribute()和request.getParameter()的区别是

request.getAttribute()获得的是对象类型,而request.getParameter()获得的是字符串类型

一般的网页应用,基本上是基于Post方式的传递,用getParameter取值。
对于自己控制的,可以通过request.setAttribute和getAttribute 实现值得传递。

对于应用Structs框架的,getAttribute用的多一点,其他的基本上用getParameter

 session.getAttribute();获得session

 request.getParameter();获得parameter
 

1.getParameter可以获得客户端传送给服务器端的参数值。 getAttribute可以得到由setAttribute设置的参数值,就相当于是使用getAttribute得到一个自己定义的参数,而不是从客户端得到的参数。


2.getParameter只能传递string类型的变量,getAttribute能传递vector。

getParameter(),获取表单的值
getAttribute()获得session的值

getParameterNames() 获得表单或则url中的参数的数组
getattributeNames():返回request对象所有属性的名字,结果集是一个Enumeration(枚举)类的实例

分享到:
评论

相关推荐

    getAttribute和getParameter区别

    getAttribute和getParameter区别 getAttribute和getParameter区别

    getAttribute和getParameter区别.

    JSP中getParameter与getAttribute有何区别? ——说实话,这个问题当初我也困惑很久,我也知道怎么用,可是到底有什么区别,我也不是很清楚,后来找了很多资料才明白。昨天又有一位朋友问我这个问题,想我当初同样也...

    HTTP:getAttribute和getParameter的区别

    HTTP:getAttribute和getParameter的区别

    学生信息管理系统

    String action request getParameter "action" ; Teacher t new Teacher ; t setUsername request getParameter "username" ; if "register" equals action { t set...

    request.getParameter() 和request.getAttribute() 区别

    request.getParameter() 和request.getAttribute() 区别

    基于request.getAttribute与request.getParameter的区别详解

    本篇文章小编为大家介绍,基于request.getAttribute与request.getParameter的区别详解。需要的朋友参考下

    购物车源码

    String whichsubmit request getParameter "whichsubmit" ; if whichsubmit null { HttpSession session request getSession ; Object loginer session getAttribute "loginer" ; ...

    SSH原理,strusts,hebernate,Spring等相关知识

    SSH框架知识-原理。其中包括strusts原理,hebernate原理,Spring的原理,以及为什么要用他们,AOP和IOC。getAttribute 和 getParameter 的区别

    jsp基础精华详解

    String name = (String) session.getAttribute("name"); 2.cookie: //创建Cookie Cookie cookie = new Cookie("name", "zhangsan"); //设置Cookie的超时时间 cookie.setMaxAge(24 * 60 * 60 *60); //把Cookie发送到...

    request.getParameter()取值为null的解决方法

    在后台通过Request取值为null,是因为只设置了id属性,而取值候用的是name属性,问题就出现在这里

    基于JSP的论坛源码

    int uId=Integer.parseInt(request.getParameter("uId")); int boardId=Integer.parseInt(request.getParameter("boardId")); int topicId=Integer.parseInt(request.getParameter("topicId")); int replyId=...

    数据库测试test.sql

    Integer count2 = (Integer) context.getAttribute("count"); //2.人数+1 if(count2 == null){ //第一个用户 count2 = 1; }else{ count2++; } //3.再存放到application作用域中 context.setAttribute(...

    基于servlet的购物车

    int bookid =Integer.parseInt(request.getParameter("id")); Map, Book> books = (Map, Book>)request.getSession().getServletContext().getAttribute("books"); Book book = books.get(bookid); System....

    request请求获取参数的实现方法(post和get两种方式)

    提交表单代码: <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>Insert title here</title> </head>...form action="/Web/AAServlet" method="pos

    j2ee期末复习资料

    j2ee复习资料 一、选择题 1.page 指令的(b )属性用于引用需要的包或类 A. extends B.import C. isErrorPage D....2.下列选项中,(b ) 可以准确地...A.getAttribute B.setContentType C.sendRedirect D.setAttribute

    jxl Java导出Excel文件jar 包

    String stuu = request.getParameter(stu.getName()); //创建Label对象 Label lableA = new Label(0,i,stuu); ws.addCell(lableA); } for(String stuidd:stuid){ j++; String stuids = stuidd....

    在JSP中使用Session制作简单的登录模块

    %> <br><html><br><head><br><title>CH5 - Member.jsp</title><br></head><br><body><br> <h2>javax.servlet.http.HttpSession - session 对象</h2> <% String Login = (String)session.getAttribute...

    Spring + Hibernate + Struts

    问另一个精通struts的同学,HttpServletRequest的getParameter和 getAttribute方法有什么区别,回答得让我都听不下去了,我实在不知道这样的情况如何把代码写出来。另外一个说精通spring,很多流行的词语,什么aop啊...

    Java类写的随机验证码

    String code = request.getParameter("code"); //取出生成的验证码(系统生成的) HttpSession session = request.getSession(); String rancode = (String)session.getAttribute("random"); if(code.equals(rancode))...

    比较简单的添加购物车,不过只有一个小程序

    String id=request.getParameter("id"); List<CartItem> items=(List)this.getServletContext().getAttribute("items"); CartItem item=null; for(CartItem i : items){ if(i.getId().equals(id)){ ...

Global site tag (gtag.js) - Google Analytics