我不知道,如果允許我問一個以上的問題在後,但在這裏它是,有關注釋和線程安全春初學者問題
例如,我有以下的,
控制器
@Controller
public class FooController{
@Autowired
private FooService fooService;
@RequestMapping(value="/foo", method=RequestMethod.POST)
public @ResponseBody foo(@RequestBody FooRequest request){
}
}
@Controller
public class BarController{
@Autowired
private FooService fooService;
@RequestMapping(value="/bar", method=RequestMethod.POST)
public @ResponseBody bar(@RequestBody FooRequest request){
}
}
服務
public class FooService{
private Foo foo;
public Foo getFoo() {
return foo;
}
public void setFoo(Foo foo) {
this.foo = foo;
}
public String doFoo(String str){
return foo.doFoo(str);
}
}
類做的工作
public class Foo{
public String doFoo(String str){
return (str + " is foo");
}
}
使用依賴注入創造豆
<context:annotation-config/>
<bean id="fooService" class="com.myapp.service.FooService">
<property name="foo" ref="foo"></property>
</bean>
<bean id="foo" class="com.myapp.foo.Foo">
</bean>
我的問題是:
- 我沒有
FooService
類使用@service
註解,我應該使用它,並爲什麼? - 這個配置是否是線程安全的,而爲什麼(它是如何實現的,如果它是線程安全的)?
- 我在哪裏可以找到關於Spring設計中使用的圖層(dao圖層,服務圖層...)以及這種設計的目的的教程?
感謝您對bean對象或調用bean對象方法的快速回復,「同步障礙」? – user200340 2012-07-20 08:51:11
在整個應用程序上下文中,AFAIK。 – 2012-07-20 08:53:25
根據[SPR-8767](https://jira.springsource.org/browse/SPR-8767),AFAIK bean初始化是單線程的, – soulcheck 2012-07-20 09:07:34