servlet获取参数时,request.getParameter("id")参数获取失败

servlet获取参数时,request.getParameter("id")参数获取失败,这里的参数是“index”里面href中的参数

要注意,取不到值,是不是要取的参数有没有提交

servlet:

public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
try {
String idStr = request.getParameter("id");
Integer id = Integer.valueOf(idStr);
ContactsDao contactsDao = new ContactsDao();
Contacts con = contactsDao.get(id);
request.setAttribute("contacts", con);
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}

}

jsp页面:

index:

<form action="QueryServlet" method="GET">
姓名:<input type="text" name="name"/>
地址:<input type="text" name="address"/>
电话:<input type="text" name="phone"/>
<input type="submit" value="查询"/>
<a href="add.jsp">增加</a>
</form>
<br><br><br><br>
<%
List<Contacts> allContactsList = (List<Contacts>) request.getAttribute("allContactsList");
if(allContactsList != null && allContactsList.size()>0){
%>
<table border=1px>
<tr>
<th>id</th>
<th>name</th>
<th>address</th>
<th>phone</th>
<th>修改</th>
<th>删除</th>
</tr>

<%
for(Contacts c : allContactsList){

%>
<tr>
<td><%=c.getId() %></td>
<td><%=c.getName()%></td>
<td><%=c.getAddress()%></td>
<td><%=c.getPhone() %></td>
<td><a href="edit.jsp?id=<%=c.getId()%>">修改</a></td>
<td><a href="delete.jsp?id=<%=c.getId()%>">删除</a></td>

</tr>

<%
}
%>
</table>
<%

}

edit界面

<form action="EditServlet" method="get">
姓名:<input type="text" name="name"/>
地址:<input type="text" name="address"/>
电话:<input type="text" name="phone"/>
<input type="hidden" name="id" value="<%=request.getParameter("id")%>"/>
<input type="submit" value="修改"/>
</form>
<%=request.getParameter("id") %>
</body>
</html>

时间: 2024-08-03 03:30:48

servlet获取参数时,request.getParameter("id")参数获取失败的相关文章

SpringMVC 中,当前台传入多个参数时,可将参数封装成一个bean类

在实际业务场景中,当前台通过 url 向后台传送多个参数时,可以将参数封装成一个bean类,在bean类中对各个参数进行非空,默认值等的设置. 前台 url ,想后台传送两个参数,userName 和 password: 1 http://localhost:8082/web/baseAction.do?pathVar=app/task/fetchItemDetail.do?userName=123&password=123 将参数封装成bean 类,并在bean类中对参数进行控制: 1 2 3

ajax 参数出现在Request payload导致request.getParameter(name)是获取不到值

参考:http://stackoverflow.com/questions/10494574/what-is-the-difference-between-form-data-and-request-payload if a request (typically POST) has Content-type header set to application/x-www-form-urlencoded the body is expected to be in the form of a sta

mysql获取插入时自增ID值的方法

1.  LAST_INSERT_ID: LAST_INSERT_ID 是与table无关的,如果向表a插入数据后,再向表b插入数据,LAST_INSERT_ID会改变. LAST_INSERT_ID是基于Connection的,只要每个线程都使用独立的Connection对象,LAST_INSERT_ID函数将返回该Connection对AUTO_INCREMENT列最新的insert or update*作生成的第一个record的ID.这个值不能被其它客户端(Connection)影响,保证

过滤器中处理multipart/form-data头部的post请求request.getParameter(&quot;)获取不到参数问题

如果不是文件类型请求,我们使用request.getParameter("");方法是可以获取到参数内容的,如果是文件类型的请求即请求的头部信息为"multipart/form-data",时,需要如下处理: HttpServletRequest request = (HttpServletRequest) req; HttpServletResponse response = (HttpServletResponse) resp; String contentTy

访问请求参数request.getParameter()

访问请求参数request.getParameter() 制作人:全心全意 getParameter() 例: 传递参数页: <%@ page language="java" contentType="text/html; charset=utf-8" pageEncoding="utf-8"%> <%@ page import="java.util.Date"%> <%@ page import

程序猿之---C语言细节27(函数无参数时细节、函数默认返回int型证明、return默认还回值、void指针++操作)

主要内容:函数无参数时细节.函数默认返回int型证明.return默认还回值.void指针++操作 一.函数无参数时细节 函数无参数时应该加上void 在c语言中一个函数 void f(); 在使用时传递参数f(2);没有报错,而在c++中则会报错 最好加上void来明确函数是无参数的 二.函数默认返回类型为int型 见下面程序 三.return默认返回1 细节:return不可返回执行栈内存中的指针,因为该内存在函数体结束时自动销毁 四.void 指针++操作 void *p; p++; //

request.setAttribute()、session.setAttribute()和request.getParameter()、request.getAttribute()的联系与区别

1.session.setAttribute()和session.getAttribute()配对使用,作用域是整个会话期间,在所有的页面都使用这些数据的时候使用. 2.request.setAttribute()和request.getAttribute()配对使用,作用域是请求和被请求页面之间. request.setAttribute()是只在此action的下一个forward需要使用的时候使用:request.getAttribute()表示从request范围取得设置的属性,必须要先

request.getAttribute() 和 request.getParameter() 有何区别?

HttpServletRequest.getParameter("modelName"); 能取到想要的modelObject吗?经过测试之后,发现是不能的.后来想想,其他道理挺简单的,当两个Web组件之间为转发关系时,转发源会将要共享 request范围内的数据先用setAttribute将数据放入到HttpServletRequest对象中,然后转发目标通过 getAttribute方法来取得要共享的数据.而MVC中用的就是Web组件之间的转发啊!真是笨,怎么当时没有想到呢? 下面

request.getParameter()不能获得值

在调试汇付接口的过程中,接收返回的参数用request.getParameter()获取参数的时候,获得的值为null. 搜索资料说这种情况跟form表单的属性 enctype有关系.当form表单内容采用enctype=multipart/form-data编码时, 调用request.getParameter()获取不到数据.可以通过request.getInputStream()获得数据,并把 “UsrCustId=6000060003271506, BgRetUrl=http%3A%2F