1.spring mvc 自動掃描註解的時候,不去掃描@Servicehtml
<!-- lang: xml --> <context:component-scan base-package= "org.cn.xxx"> <context:exclude-filter type ="annotation" expression= "org.springframework.stereotype.Service" /> </context:component-scan >
2.spring 自動掃描註解的時候,不去掃描@Controllerspring
<!-- lang: xml --> <context:component-scan base-package ="org.cn.xxx> <context:exclude-filter type ="annotation" expression= "org.springframework.stereotype.Controller" /> </context:component-scan >
參考:http://blog.sina.com.cn/s/blog_5ddc071f0100uf7x.html。尤爲是這段話:express
Spring MVC啓動時的配置文件,包含組件掃描、url映射以及設置freemarker參數,讓spring不掃描帶有@Service註解的類。爲何要這樣設置?由於servlet-context.xml與service-context.xml不是同時加載,若是不進行這樣的設置,那麼,spring就會將全部帶@Service註解的類都掃描到容器中,等到加載service-context.xml的時候,會由於容器已經存在Service類,使得cglib將不對Service進行代理,直接致使的結果就是在service-context中的事務配置不起做用,發生異常時,沒法對數據進行回滾。mvc