request.getParameter获取NULL
时间: 2023-08-15 10:54:53 浏览: 227
如果你试图从Java代码中获取URL参数,但是请求的getParameter方法返回null,那么可能是以下原因导致的:
1. 参数未正确传递:请确保在URL中正确传递了参数,并且参数名称正确。
2. 参数不是请求参数:如果参数是请求体中的参数,则需要使用不同的方法(例如,使用BufferedReader读取请求体)访问它们。
3. 参数编码问题:如果参数是URL编码的,请确保使用正确的方法对其进行解码。
4. 请求方法不正确:请确保使用正确的请求方法(GET或POST)。
如果仍然无法解决问题,请提供更多细节,例如代码片段和请求/响应信息,以便我们更好地帮助您解决问题。
相关问题
request.getparameter获取null
### 回答1:
如果你试图从Java代码中获取URL参数,但是请求的getParameter方法返回null,那么可能是以下原因导致的:
1. 参数未正确传递:请确保在URL中正确传递了参数,并且参数名称正确。
2. 参数不是请求参数:如果参数是请求体中的参数,则需要使用不同的方法(例如,使用BufferedReader读取请求体)访问它们。
3. 参数编码问题:如果参数是URL编码的,请确保使用正确的方法对其进行解码。
4. 请求方法不正确:请确保使用正确的请求方法(GET或POST)。
如果仍然无法解决问题,请提供更多细节,例如代码片段和请求/响应信息,以便我们更好地帮助您解决问题。
### 回答2:
request.getParameter()是获取HTTP请求中的参数值的方法,通常用于在Servlet或JSP程序中获取客户端提交的数据。当该方法返回null时,可能有以下几种原因:
1.该参数不存在:当请求中没有该参数名时,该方法返回null。需要确认是否已经在请求中加入了该参数。
2.请求方式不正确:GET方式和POST方式获取参数的方式是不同的,因此如果使用错误的方法去获取参数,也会返回null。
3.请求所属的表单的enctype属性值不为application/x-www-form-urlencoded:默认情况下,表单数据的enctype属性值为“application/x-www-form-urlencoded”格式,如果设置成了其他格式,如“multipart/form-data”或“text/plain”,则需要使用其他方式来获取数据。
4.字符编码不一致:当客户端提交的参数值与服务器所使用的字符编码不同,也会出现获取参数为null的情况。此时可以使用getParameterValues()方法来获取所有值,再根据具体情况进行处理。
5.请求参数中包含特殊字符:如果请求中的参数中包含特殊字符,如“<”、“>”等,则可能会出现获取参数值为null的情况。此时需要对参数进行过滤或加密,避免出现类似的问题。
总之,获取null的情况可能是由于客户端传递的请求信息有误,需要对请求参数进行仔细的检查和过滤,同时也需要注意请求信息的编码和格式等问题。
### 回答3:
在Java中,我们可以使用request.getParameter()方法来获取请求中参数的值。但是有时我们可能会遇到获取null的情况,可能是以下几个原因导致的:
1. 参数名不正确:当我们使用request.getParameter()方法获取参数值时,需要传入参数名。如果参数名不正确,则会返回null。需要仔细检查参数名是否正确。
2. 参数值为空:当我们使用request.getParameter()方法获取参数值时,如果参数值为空,则会返回null。需要检查请求参数是否为空。
3. 参数值未提交到服务器:如果请求参数并未提交到服务器,则request.getParameter()方法会返回null。需要检查请求是否正确提交。
4. 参数名和其他变量名冲突:有时我们可能会将参数名与其他变量名冲突,例如使用了和Java关键字相同的变量名。这种情况下,request.getParameter()方法会返回null。
5. 请求方式不正确:当我们使用GET方式请求时,可以使用request.getParameter()方法获取请求参数;但是如果使用POST方式请求,则需要使用request.getInputStream()方法获取请求体中的参数。
总之,获取null的原因可能是多方面的,需要根据具体情况仔细排查。如果无法解决问题,可以使用日志跟踪或者Debug方式排查问题。
public void save() { String forwardurl = request.getParameter("forwardurl"); String errorurl=request.getParameter("errorurl"); String name = request.getParameter("name"); String spno = request.getParameter("spno"); String jiage = request.getParameter("jiage"); String dazhe = request.getParameter("dazhe"); String tuijian = request.getParameter("tuijian"); String zuixin = request.getParameter("zuixin"); String hot=request.getParameter("hot"); String sptype = request.getParameter("sptype"); String sptypeid = request.getParameter("sptypeid"); String tupian = request.getParameter("tupian"); String jieshao = request.getParameter("jieshao"); String hyjia = request.getParameter("hyjia"); String pubren = request.getParameter("pubren"); SimpleDateFormat sdfshangpin = new SimpleDateFormat("yyyy-MM-dd"); Shangpin shangpin = new Shangpin(); shangpin.setName(name == null ? "" : name); shangpin.setSpno(spno == null ? "" : spno); shangpin.setJiage(jiage == null ? (double) 0 : new Double(jiage)); shangpin.setDazhe(dazhe == null ? 0 : new Integer(dazhe)); shangpin.setTuijian(tuijian == null ? 0 : new Integer(tuijian)); shangpin.setZuixin(zuixin == null ? 0 :new Integer( zuixin)); shangpin.setHot(hot==null?0:new Integer(hot)); shangpin.setSptype(sptype == null ? "" : sptype); shangpin.setSptypeid(sptypeid == null ? 0 : new Integer(sptypeid)); shangpin.setTupian(tupian == null ? "" : tupian); shangpin.setJieshao(jieshao == null ? "" : jieshao); shangpin.setHyjia(hyjia == null ? 0 : new Integer(hyjia)); shangpin.setPubtime(new Date()); shangpin.setPubren(pubren == null ? "" : pubren);每一行代码的解释
这段代码是一个Java方法,包含了多个变量和参数。以下是每一行代码的解释:
1. String forwardurl = request.getParameter("forwardurl");
定义一个名为forwardurl的字符串变量,通过request对象获取名为"forwardurl"的参数值。
2. String errorurl=request.getParameter("errorurl");
定义一个名为errorurl的字符串变量,通过request对象获取名为"errorurl"的参数值。
3. String name = request.getParameter("name");
定义一个名为name的字符串变量,通过request对象获取名为"name"的参数值。
4. String spno = request.getParameter("spno");
定义一个名为spno的字符串变量,通过request对象获取名为"spno"的参数值。
5. String jiage = request.getParameter("jiage");
定义一个名为jiage的字符串变量,通过request对象获取名为"jiage"的参数值。
6. String dazhe = request.getParameter("dazhe");
定义一个名为dazhe的字符串变量,通过request对象获取名为"dazhe"的参数值。
7. String tuijian = request.getParameter("tuijian");
定义一个名为tuijian的字符串变量,通过request对象获取名为"tuijian"的参数值。
8. String zuixin = request.getParameter("zuixin");
定义一个名为zuixin的字符串变量,通过request对象获取名为"zuixin"的参数值。
9. String hot=request.getParameter("hot");
定义一个名为hot的字符串变量,通过request对象获取名为"hot"的参数值。
10. String sptype = request.getParameter("sptype");
定义一个名为sptype的字符串变量,通过request对象获取名为"sptype"的参数值。
11. String sptypeid = request.getParameter("sptypeid");
定义一个名为sptypeid的字符串变量,通过request对象获取名为"sptypeid"的参数值。
12. String tupian = request.getParameter("tupian");
定义一个名为tupian的字符串变量,通过request对象获取名为"tupian"的参数值。
13. String jieshao = request.getParameter("jieshao");
定义一个名为jieshao的字符串变量,通过request对象获取名为"jieshao"的参数值。
14. String hyjia = request.getParameter("hyjia");
定义一个名为hyjia的字符串变量,通过request对象获取名为"hyjia"的参数值。
15. String pubren = request.getParameter("pubren");
定义一个名为pubren的字符串变量,通过request对象获取名为"pubren"的参数值。
16. SimpleDateFormat sdfshangpin = new SimpleDateFormat("yyyy-MM-dd");
定义一个SimpleDateFormat对象sdfshangpin,用于格式化日期。
17. Shangpin shangpin = new Shangpin();
创建一个名为shangpin的Shangpin对象,用于存储商品信息。
18. shangpin.setName(name == null ? "" : name);
设置shangpin对象的name属性,如果name为null,则设置为空字符串。
19. shangpin.setSpno(spno == null ? "" : spno);
设置shangpin对象的spno属性,如果spno为null,则设置为空字符串。
20. shangpin.setJiage(jiage == null ? (double) 0 : new Double(jiage));
设置shangpin对象的jiage属性,如果jiage为null,则设置为0。
21. shangpin.setDazhe(dazhe == null ? 0 : new Integer(dazhe));
设置shangpin对象的dazhe属性,如果dazhe为null,则设置为0。
22. shangpin.setTuijian(tuijian == null ? 0 : new Integer(tuijian));
设置shangpin对象的tuijian属性,如果tuijian为null,则设置为0。
23. shangpin.setZuixin(zuixin == null ? 0 :new Integer( zuixin));
设置shangpin对象的zuixin属性,如果zuixin为null,则设置为0。
24. shangpin.setHot(hot==null?0:new Integer(hot));
设置shangpin对象的hot属性,如果hot为null,则设置为0。
25. shangpin.setSptype(sptype == null ? "" : sptype);
设置shangpin对象的sptype属性,如果sptype为null,则设置为空字符串。
26. shangpin.setSptypeid(sptypeid == null ? 0 : new Integer(sptypeid));
设置shangpin对象的sptypeid属性,如果sptypeid为null,则设置为0。
27. shangpin.setTupian(tupian == null ? "" : tupian);
设置shangpin对象的tupian属性,如果tupian为null,则设置为空字符串。
28. shangpin.setJieshao(jieshao == null ? "" : jieshao);
设置shangpin对象的jieshao属性,如果jieshao为null,则设置为空字符串。
29. shangpin.setHyjia(hyjia == null ? 0 : new Integer(hyjia));
设置shangpin对象的hyjia属性,如果hyjia为null,则设置为0。
30. shangpin.setPubtime(new Date());
设置shangpin对象的pubtime属性,值为当前时间。
31. shangpin.setPubren(pubren == null ? "" : pubren);
设置shangpin对象的pubren属性,如果pubren为null,则设置为空字符串。
阅读全文