0
我開發了一個包含2個項目的基本應用程序。第一個是數據層,第二個是一個Web應用程序(MVC項目)@autowired在Spring MVC中不工作
數據層包含以下
@Entity
@Table(name="users")
public class User implements Serializable {
.....
}
public interface UserBase {
.....
}
@Repository
public interface UserRepository extends JpaRepository <User, Long>{
}
@Service
public class UserImpl implements UserBase {
private final UserRepository repository;
@Autowired
public UserImpl(UserRepository repository) {
this.repository = repository;
......
}
@RunWith(SpringJUnit4ClassRunner.class)
@ContextConfiguration("Config/applicationContext.xml")
public class testcase1 {
@Autowired
private UserImpl userImpl;
@Test
public void test() {
.....
UserImpl.save(user);
.....
}
網絡應用 @Controller 公共類ManageUser {
@Autowired
UserImpl userImpl;
@RequestMapping("/addUser/")
public ModelAndView addUser() {
UserImpl.save(user);
.....
}
}
當我運行單元測試代碼成功,沒有發現錯誤。 但是,當我把數據層的輸出jar放入spring mvc web app的lib文件夾中,並在build bath中添加了對數據層的引用時,我收到一條錯誤消息
注入自動裝配依賴失敗;嵌套的例外是org.springframework.beans.factory.BeanCreationException:無法自動裝配領域:com.my.domin.impl.UserImpl
注: 我使用Tomcat。 我用流動配置:
<jpa:repositories base-package="com.sanatech.repository" />
<context:component-scan base-package="com.my.repository"/>
<context:component-scan base-package="com.my.domin.impl"/>
<context:component-scan base-package="com.my.domin"/>
<context:component-scan base-package="com.my"/>
<context:component-scan base-package="com.my.manageuser.controller"/>
<tx:annotation-driven/>
<context:annotation-config />
編輯
當我分離的單元測試一個新的項目,並添加參考構建浴中的數據層罐子我發現的相同的異常。
我試過了,我發現了同樣的例外 – user2564640