2013-08-14 3 views
3

Я знаю в сервлетах много областей (запрос, сессия ....).Какие области существуют в весеннем mvc?

  1. Как это соотносится с Spring MVC?
  2. Как использовать нужную область применения в стиле Spring?

Я не хочу напрямую использовать HttpRequest и HttpResponse.

+2

сервлеты сами по себе не имеют каких-либо областей, но я предполагаю, что вы имеете в виду CDI прицелов. Области CDI, хотя обычно используются в контексте веб-приложений, не привязаны к ним. Например, область запроса активна во время запросов сервлета, вызовов веб-служб, удаленного вызова EJB, чтобы назвать несколько. – rdcrng

ответ

1

• Синглтон: этот параметр привязывает определение компонента к одному экземпляру за весну. Контейнер IoC (по умолчанию).

• Прототип: это позволяет определять один бит, чтобы иметь любое количество экземпляров объектов .

Message aMessage; //object 

// singleton bean scope 
aMessageA = new Message(); 
aMessageA = (Message) applicationContext.getBean("message"); 
aMessageA.setText("message1 :D"); 
System.out.println(aMessageA.getText()); 

aMessageB = new Message(); 
aMessageB = (Message) applicationContext.getBean("message"); 
System.out.println(aMessageB.getText()); 
// result will be the same for both objects because it's just one instance. 


// Prototype bean scope. scope="prototype" 
aMessageA = new Message(); 
aMessageA = (Message) applicationContext.getBean("message"); 
aMessageA.setText("message :D"); 
System.out.println(aMessageA.getText()); 

aMessageB = new Message(); 
aMessageB = (Message) applicationContext.getBean("message"); 
System.out.println(aMessageB.getText()); 

/* first object will print the message, but the second one won't because it's a new instance.*/ 
+0

они по умолчанию, OP спрашивает о других (запрос, сеанс, глобальный сеанс, приложение, websocket) – Andrew

0

Spring MVC предложения больше областей, таких как запрос, сеанс, глобальная сессия.

Вы можете аннотировать весенние бобы, чтобы использовать правильный объем. Пожалуйста, следуйте ниже, чтобы узнать больше.

http://static.springsource.org/spring/docs/2.0.x/reference/beans.html#beans-factory-scopes