Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/351.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/hibernate/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java spring项目中hibernate autowire的小问题,bean未找到错误_Java_Hibernate_Spring_Autowired - Fatal编程技术网

Java spring项目中hibernate autowire的小问题,bean未找到错误

Java spring项目中hibernate autowire的小问题,bean未找到错误,java,hibernate,spring,autowired,Java,Hibernate,Spring,Autowired,我想试试Spring3.0.5的特性 我在applicationContext中有以下条目: <context:component-scan base-package="com.project.personal.admin.model"/> <context:annotation-config /> 像这样的Pojo: @Entity @Table(name = "user", uniqueConstraints = { @UniqueConstraint(column

我想试试Spring3.0.5的
特性

我在applicationContext中有以下条目:

<context:component-scan base-package="com.project.personal.admin.model"/>
<context:annotation-config />
像这样的Pojo:

@Entity
@Table(name = "user", uniqueConstraints = {
@UniqueConstraint(columnNames = {"email"})})
@Component("user")
public class User {

  public User() {
    this.dateCreated = new Date();
  }


  @Id
  @GeneratedValue(generator = "uuid")
  @GenericGenerator(name = "uuid", strategy = "uuid.hex")
  @Column(name = "id", length = 32)
  private String id;
  @Column(name = "email", length = 150)
  private String email;

 //setters and getters
}
我的测试课就是这样

@RunWith(SpringJUnit4ClassRunner.class)
@ContextConfiguration(locations={"classpath:META-INF/test-project-admin-config.xml"})
@TransactionConfiguration(defaultRollback=true)
@Transactional
public class UserDAOImplTest {
    //@Autowired
    @Resource(name="manager")
    Manager manager;

    @Autowired
    UserDAO userDAO;

    public UserDAOImplTest() {
    }

    @Test
    public void testSave() {
        User u1 = manager.CreateUser();
        u1.setEmail("misterjojtoo@gmail.com");
        u1.setFullname("joseph djomeda");
        u1.setPassword("psaumedetdavid");
        userDAO.save(u1);
        User expResult = u1;

        User result = (User)userDAO.getById(u1.getId());

        Assert.assertEquals(expResult, result);
        Assert.assertEquals(expResult.getId(), result.getId());
     }

    }
我有一个错误:

org.springframework.beans.factory.NoSuchBeanDefinitionException:未找到依赖项类型为[com.project.personal.admin.manager.manager]的匹配bean:至少需要1个符合此依赖项autowire候选项条件的bean。依赖项注释:{@org.springframework.beans.factory.annotation.Autowired(required=true)}

大多数时候,我在applicationcontext中为每个类创建条目,它一直在工作,这次我想尝试包扫描。 这是不是我做得不好?我试过自动连线,后来又试过资源。所以我没有主意了


感谢阅读。

确保您的
管理器
位于正确的包中(或者您的
基本包
设置正确)(我不想提及这一点,但在模型包中包含管理器似乎是可疑的)

您在
@ContextConfiguration
注释中定义的应用程序上下文
测试项目管理配置.xml
是否与您在应用程序中使用的内容完全相同?它需要在那里进行组件扫描。你的回答让我意识到了一些事情。事实上,这是一个maven项目。我有模型模块、服务模块和webapp模块。POJO位于
com.project.personal.model.domain
和manager中,而不是
com.project.personal.model.manager
,我把它放在
com.project.personal.manager
中。谢谢
@RunWith(SpringJUnit4ClassRunner.class)
@ContextConfiguration(locations={"classpath:META-INF/test-project-admin-config.xml"})
@TransactionConfiguration(defaultRollback=true)
@Transactional
public class UserDAOImplTest {
    //@Autowired
    @Resource(name="manager")
    Manager manager;

    @Autowired
    UserDAO userDAO;

    public UserDAOImplTest() {
    }

    @Test
    public void testSave() {
        User u1 = manager.CreateUser();
        u1.setEmail("misterjojtoo@gmail.com");
        u1.setFullname("joseph djomeda");
        u1.setPassword("psaumedetdavid");
        userDAO.save(u1);
        User expResult = u1;

        User result = (User)userDAO.getById(u1.getId());

        Assert.assertEquals(expResult, result);
        Assert.assertEquals(expResult.getId(), result.getId());
     }

    }