Arian :
Is the atomic integer in the following piece of code shared between different REST calls? What if it was static?
public class GreetingController {
private static final String template = "Hello Docker, %s!";
private final AtomicLong counter = new AtomicLong();
@GetMapping("/greeting")
public Greeting greeting(@RequestParam(value="name",
defaultValue="World") String name) {
return new Greeting(counter.incrementAndGet(),
String.format(template, name));
}
}
Andreas :
It is shared if the controller is a singleton.
Since this looks like Spring MVC (you didn't say), and since a @Controller
class by default is a singleton, then the answer is:
Yes, the atomic integer is shared between different REST calls.
It doesn't have to be static
.
Guess you like
Origin http://43.154.161.224:23101/article/api/json?id=357456&siteId=1