W jednym wywiadzie stawiłem czoła temu pytaniu. W wiosennym pliku konfiguracyjnym, jeśli podamy scope = "singleton", co się stanie i singleton = "true", co się stanie.
Odpowiedzi:
2 dla odpowiedzi № 1Na wiosnę 1.x były tylko dwa zakresy, prototyp i singel, więc było tylko singleton=true
lub singleton=false
. Cytując DTD:
Przykłady fasoli mogą być "single" (wspólne)wystąpienia) lub "prototypy" (niezależne instancje). Kolejne obiektywy mają być zbudowane na górze podstawowej infrastruktury BeanFactory, a zatem nie są jej częścią.
(Źródło)
Jednak to nie pozwoliło im wprowadzić innych zakresów, więc zmienili DTD na wiosnę 2, na scope="singleton"
i scope="prototype"
. To pozwoliło im wprowadzić także inne zakresy, takie jak scope="session"
i scope="request"
. Możesz to sprawdzić w DTD of Spring 2 i dalej.
Aby odpowiedzieć na twoje pytanie, zazwyczaj powinny być takie same, ale w różnych wersjach Spring.