求详解!

解决方案 »

  1.   

    request.getParameter()  是从浏览器传递到服务器中的参数
    request.getAttribute()  是服务器代码暂时保留在request的值,这些值在代码中通过setAttribute后才会有值
      

  2.   

    http://net138.blog.163.com/blog/static/28373415200921191612591/
      

  3.   

    request.getParameter()看到Parameter就知道当参数来用,可以直接给数值,就像c,c++之类语言的形参,实参。
    request.getAttribute()看到Attribute就知道当属性来用,那么必须要赋值就是setAttribute();
      

  4.   

    楼上的链接简单看了一下,写的是如果是链接关系用getParameter();
    如果是转发用getAttribute();但如果是这样的代码呢?
    request.setAttribute("abc","object");
    request.getRequestDispatcher(index.jsp?abc=5).forward(request,response);
    能冲突吗?
      

  5.   

    另外
    <c:import>
    <c:param name="name" value="value" />
    </c:import>这个标签是用getAttribute()接还是用getParameter 接啊
      

  6.   

    1.不冲突的
    2.这个用getParameter ,但要在form表单内
      

  7.   

    如何用getAttribute()取呢?为想传实体类!
      

  8.   

    request.getParameter() 是从浏览器传递到服务器中的参数
    request.getAttribute() 是服务器代码暂时保留在request的值,这些值在代码中通过setAttribute后才会有值
      

  9.   

    <c:import>
    <c:param name="name" value="value" />
    </c:import>这个,我要是就想通过getAttribute()接怎么办啊?
      

  10.   

    getParameter通常用于接受客户端请求;
    getAttribute通常用于将服务器数据返回给客户
      

  11.   

    request.setAttribute()与request.getAttribute()是一对,你setAttribute的数据只能用getAttribute来获取,getParameter是前台传递过来的参数,接受时用的~换句话说就是不是setAttribute进去的数据你取的时候就要用getParameter
      

  12.   

    getAttribute(),不先setAttribute()是取不到值的
      

  13.   

    getParameter通过浏览器请求路径传递值,而getAttribute()则通过在后台服务器设置值和key然后才能得到值
      

  14.   

    为什么lz不用jstl的表达式接值呢,那样很容易的:${requestScope.object}("."后面那个是你在request中存的值,session用法一样,而且你可以在request或session中存集合都行,用这个表达式加foreach就可以循环遍历);再说明一下,如果lz用了request.setAttribute()的话,表示有值存入了request作用域中,而在页面传递的值其作用域为page,但是用getAttribute()取到的是request作用域的值,而getParameter取得只是页面传递的参数值;还有就是lz需要看看互联网中的各作用域的有效范围;还有转发与重定向的区别;good luck!
      

  15.   

    <c:import>
    <c:param name="name" value="value" />
    </c:import>这个可以用jstl的el表达式传值么,这个传的不是字符串么?