`

request.getParameter()与request.getAttribute()有什么区别? getParameter得到的都是String类型的。或

 
阅读更多

request.getParameter()与request.getAttribute()有什么区别?

getParameter得到的都是String类型的。或者是http://a.jsp?id=123中的123,或者是某个表单提交过去的数据。
getAttribute则可以是对象。getParameter()是获取POST/GET传递的参数值;
getAttribute()是获取对象容器中的数据值

request.getParameter()是接受从浏览器上发出的请求,返回的一定是一个String。
request.getAttribute()一般是取从Servlet上setAttribute()的对象,返回可以是各种形式(Object)

另外使用struts,怎么用request.getAttribute()取得List

问:

在action中,将List通过request.setAttribute()存放,在jsp中通过request.getAttribute却得不到,怎么解决?传统的方式logic:iterator的方式怎么实现在jsp中显示集合元素

 

答:

这样加入到Context里:
List list = new List();
ServletContext context = this.servlet.getServletContext();
context.setAttribute("list", list);
这样得到:
List list = (List)getServlet().getServletContext().getAttribute("list");

getParameter()获得的是url中传递的参数,当HTML的form表单为post时,这些参数会隐式的进行传递,其获得的对象为String.

getAttribute()获得的是Action或Servlet处理后返回给页面的信息,在页面中可以用getAttribute()来获得.正如楼上所说,获得的是由setAttribute()方法赋的值,返回值是Object.

在做具体项目时,每个项目都会有查询功能,简单来说:
在查询页面点击查询按纽时,将form表单信息提交给处理类,处理类使用getParameter()获得.然后处理类操作DB找到匹配的记录结果集,然后使用request.setAttribute("list",list)方法将结果集暂存于request返回给查询页面,在查询页面中使用request.getAttribute("list")方法获得结果集,然后循环List输出结果到页面.

分享到:
评论

相关推荐

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

    通过上述分析,我们可以清楚地看到`request.getParameter()`与`request.getAttribute()`在功能、用途及使用场景上的区别,这将有助于开发者在实际项目中更加合理地选择和应用这些方法,提高代码的效率和可维护性。

    了解JSP中request属性的用法

    request.getParameter() 和 request.getAttribute() 是两个最常用的方法来获取客户端的请求信息,但是它们的用法和作用域却有很大的区别。 request.getParameter() 方法是用来获取客户端通过 HTTP 协议传递的参数,...

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

    总的来说,`getAttribute()`和`getParameter()`都是处理客户端请求数据的重要工具,但它们的使用场合和数据类型处理上有所区别。理解这些差异对于编写高效且健壮的Web应用程序至关重要。在开发过程中,根据具体需求...

    getAttribute和getParameter区别

    ### getAttribute与getParameter的区别 在Java Web开发中,`getAttribute`和`getParameter`是两个非常重要的方法,它们分别用于获取不同的数据。理解这两个方法的区别对于正确处理用户请求和页面间的数据传递至关...

    数据库测试test.sql

    // String methodName = request.getParameter("method"); // // //根据method属性的值调用相应的方法 // if("login".equals(methodName)){ // this.login(request,response); // }else if("register".equals(method...

    getAttribute和getParameter区别.

    ### getAttribute 和 getParameter 区别详解 #### 一、概述 在Web开发中,`getAttribute` 和 `getParameter` 是两个非常重要的方法,主要用于获取不同的数据类型和来源。这两个方法虽然相似,但在实际应用场景中...

    Jsp的request的用法

    在本篇文章中,我们将深入探讨`request.getParameter()`和`request.setAttribute()`以及`request.getAttribute()`的区别,并提供相关示例来帮助理解它们的用法。 **一、request.getParameter() 和 request....

    session.getAttribute

    ### `request.getParameter()` 和 `session.getAttribute()` 的区别 #### 1. **作用范围** - **`request.getParameter()`**:此方法用于从当前 HTTP 请求中获取参数的值。这些参数通常来源于 HTML 表单或 URL 查询...

    HTTP:getAttribute和getParameter的区别

    ### HTTP:getAttribute与getParameter的区别详解 #### 一、概述 在Web开发中,尤其是在Java Web领域,`HttpServletRequest` 类提供了多种方法来处理HTTP请求。其中,`getAttribute()` 和 `getParameter()` 是两个...

    基于servlet的购物车

    int bookNum = Integer.parseInt(request.getParameter(String.valueOf(bookid))); System.out.println(bookNum); //封装成line对象 Line line = new Line(book, bookNum); System.out.println(line); ...

    很经典的登录回选。

    String url = request.getParameter("url"); URLEncoder.encode(URLDecoder.decode(url,"iso-8859-1"), "iso-8859-1"); session.setAttribute("redirectUrl",url); } else{ session.setAttribute(...

    request域对象的实例代码

    String name = request.getParameter("username"); // 获取请求参数 request.setAttribute("username", name); // 设置属性 RequestDispatcher dispatcher = request.getRequestDispatcher("/welcome.jsp"); // ...

    JSP几种页面间传递参数实现的方法

    String name=request.getParameter("username"); session.setAttribute("username",name); %> Your name is:<%=request.getParameter("username")%> whats your hobby 3.jsp your name is:...

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

    String username = request.getParameter("username"); String password = request.getParameter("password"); String[] hobby = request.getParameterValues("hobby"); System.out.println(username + "," + ...

    JAVA几个常见错误简析

    基本数据类型不会引发此问题,因为它们都有默认值,但对象引用如果没有明确初始化,其值默认为null。 二、空指针异常的常见场景 1. 直接使用未初始化的对象 示例代码: ```java out.println(request....

    JSP 9大内置对象学习总结

    String message = (String) request.getAttribute("message"); // 移除属性 request.removeAttribute("message"); ``` #### 二、Response对象 `response`对象主要用于向客户端发送响应信息,例如返回HTML页面、...

    7request和response.docx

    String operator = request.getParameter("operator"); out.println(calculate(num1, num2, operator)); %> ``` 3. 使用Cookie实现用户自动登录: 在`cookie.jsp`中,收集用户输入的用户名和密码,然后将它们...

    多页面JSP传值

    String hobby = (String) request.getAttribute("hobby"); ``` 使用Session和Request对象传递参数时,需要注意的是,它们都具有不同的作用域。Session在整个用户会话期间有效,而Request仅在当前请求周期内有效。...

Global site tag (gtag.js) - Google Analytics