title: The plus(+) sign received by @RequestParam is replaced by a blank
body: <p>I'm trying to get an ISO String with @RequestParam and parse it to a Date. </p>
  
  <p>Using code below, I tried to test with <code>http://localhost:8989/api/v1/test?date=2019-08-19%2000:00:00.000+0000</code></p>
  
  <p>But the result was 400 Bad Request, When I changed the type of date value to String, it was <code>2019-08-19 00:00:00.000 0000</code>.</p>
  
  <pre><code>public class myController {
  
      @GetMapping(value = "/api/{version}/test", produces = "application/json")
      public ResponseEntity&lt;MyList&gt; getFreeList(
          @PathVariable
          String version,
          @RequestParam("date")
          @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss.SSSZ")
          Optional&lt;Date&gt; date) {
              return new ResponseEntity&lt;&gt;(myService.getList(
                  date.orElse(null)),
                  HttpStatus.OK);
      }
  }
  </code></pre>
  
  <p>I can't change the URL format. How to get the plus sign properly?</p>