Servlet中parameter和attribute的差别

昨天晚上在跟着视频做项目时遇到一个问题

我在一个页面中打算通过一个超链接跳转到一个servlet,并且在这个链接中通过?type=list来传递一个参数,但是在servlet中却始终获取不到值。

<a herf="/xxxxx/servlet/CollectionServlet?type=list">进入</a>


 

String type = (String) request.getAttribute("type");
if(type!=null && type.equals("list")){
  doA();
}else if(type!=null && type.equals("save")){
  doB();
}



后来发现,此处应该使用

request.getParameter("type");


原来,parameter是直接通过链接就能看到的传值,算是客户端到服务器端的传递。

而attribute是存在于服务器端的,是页面所在内存的一部分,通过forward来转发request的时候就能得到传递,算是始终存在于服务器端的数据。

 

一个jsp页面中,表单的数据是通过parameter传递的,如果是post方法,可以在链接地址中看到问号后面的传值。

而attribute是在服务器端可以自行修改的。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值