我想写
if (POST.equals(req.getMethod()))
Run Code Online (Sandbox Code Playgroud)
代替
if ("POST".equals(req.getMethod()))
Run Code Online (Sandbox Code Playgroud)
但是我在Servlet API中找不到常量定义(只在HttpServletRequest中查找,我希望它们在那里).
他们在哪里(我使用了大量的库,所以如果其他人定义它们,那也会有用)?
Mat*_*olm 25
似乎Java EE 6将HTTP方法名称作为常量添加到javax.ws.rs.HttpMethod注释接口.根据您的设置,它们可能适用于您.
http://docs.oracle.com/javaee/6/api/javax/ws/rs/HttpMethod.html
ZZ *_*der 12
这些常量在Servlet中被定义为private,
public abstract class HttpServlet extends GenericServlet
implements java.io.Serializable
{
private static final String METHOD_DELETE = "DELETE";
private static final String METHOD_HEAD = "HEAD";
private static final String METHOD_GET = "GET";
private static final String METHOD_OPTIONS = "OPTIONS";
private static final String METHOD_POST = "POST";
private static final String METHOD_PUT = "PUT";
private static final String METHOD_TRACE = "TRACE";
...
Run Code Online (Sandbox Code Playgroud)
只是字面上使用方法名称就可以了.
在Spring中(所以在JDK之外)你可以使用:
org.springframework.web.bind.annotation.RequestMethod
Run Code Online (Sandbox Code Playgroud)
这是一个提供所有HTTP方法的枚举
所以你可以使用 RequestMethod.POST.name()
| 归档时间: |
|
| 查看次数: |
36484 次 |
| 最近记录: |