如何使用requst getAttribute Java获取布尔值?

rm *_*tar 1 java httprequest getattribute

如何将布尔值设置为请求中的属性值。

考虑以下片段

protected void doPost(HttpServletRequest req, HttpServletResponse res) throws ServletException, IOException  {

 boolean isOriginal = (boolean) req.getAttribute(“isOriginalFile");
//Some code
}
Run Code Online (Sandbox Code Playgroud)

请求可能包含/可能不包含isOriginalFile属性的地方。如何处理呢?

Tom*_*wel 5

假设获取falsewhen属性是null您期望的:

boolean isOriginal = Boolean.TRUE == req.getAttribute("isOriginalFile");
Run Code Online (Sandbox Code Playgroud)

然后,如果将属性设置为除Boolean.TRUE(包括null)以外的任何值,您将得到false

您可以通过以下两种方式进行设置:

req.setAttribute("isOriginalFile", Boolean.TRUE);
req.setAttribute("isOriginalFile", (Boolean) true);
req.setAttribute("isOriginalFile", true);
Run Code Online (Sandbox Code Playgroud)

但不能作为String(因为它将随后被评估为false):

req.setAttribute("isOriginalFile", "true");
Run Code Online (Sandbox Code Playgroud)