【问题标题】:spring, hibernate: issue with creating new @Entity modelspring,hibernate:创建新@Entity模型的问题
【发布时间】:2017-05-14 16:10:19
【问题描述】:

我正在尝试在 mysql 表 testdata 中插入数据。

import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.Table;


import org.springframework.data.annotation.Id;


import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.Table;


import org.springframework.data.annotation.Id;

@Entity
@Table(name = "testdata")
public class testdata {


    @Id
    @Column(name = "image_id")
    private String image_id;


    @Column(name = "post_id")
    String post_id;

    @Column(name = "image")
     String image;

    public String getPost_id() {
        return post_id;
    }

    public void setPost_id(String post_id) {
        this.post_id = post_id;
    }

    public String getImage() {
        return image;
    }

    public void setImage(String image) {
        this.image = image;
    }

    public String getImage_id() {
        return image_id;
    }

    public void setImage_id(String image_id) {
        this.image_id = image_id;
    }

    public testdata(String post_id, String image, String image_id) {
        super();
        this.post_id = post_id;
        this.image = image;
        this.image_id = image_id;
    }

}

public String getPost_id() {
    return post_id;
}

public void setPost_id(String post_id) {
    this.post_id = post_id;
}

public String getImage() {
    return image;
}

public void setImage(String image) {
    this.image = image;
}

public String getImage_id() {
    return image_id;
}

public void setImage_id(String image_id) {
    this.image_id = image_id;
}

public testdata(String post_id, String image, String image_id) {
    super();
    this.post_id = post_id;
    this.image = image;
    this.image_id = image_id;
}

}

当我运行我的项目时,它会给出以下异常

springframework.beans.factory.BeanCreationException: Error creating bean with name 'userController': Injection of autowired dependencies failed; nested exception is org.springframework.beans.factory.BeanCreationException: Could not autowire field: com.demo.service.ServiceInterface com.demo.controller.UserController.service; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'service': Injection of autowired dependencies failed; nested exception is org.springframework.beans.factory.BeanCreationException: Could not autowire field: com.demo.dao.UserDao com.demo.service.ServiceImpl.dao; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'userDaoImpl': Injection of autowired dependencies failed; nested exception is org.springframework.beans.factory.BeanCreationException: Could not autowire field: private org.hibernate.SessionFactory com.demo.dao.UserDaoImpl.sessionFactory; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'sessionFactory' defined in com.demo.conf.HibernateConfiguration: Invocation of init method failed; nested exception is org.hibernate.AnnotationException: No identifier specified for entity: com.demo.model.testdata

但如果我删除 @Entity 项目成功运行。但数据没有插入。 是否可以在没有休眠的情况下使用其他方法插入数据。 如果有人对此有所了解,我将不胜感激。

【问题讨论】:

  • 考虑发布完整的堆栈跟踪

标签: java mysql hibernate spring-mvc persistence


【解决方案1】:

您没有为 Id 注释指定 javax.persistence 包。

替换

import org.springframework.data.annotation.Id;

import javax.persistence.Id;

【讨论】:

  • @Anupam Agnihotri 很棒 :)
  • @Anupam Agnihotri “Downvoter 它是免费的?” 不是给你的。这是给那些没有解释就否决答案的人。使用这种语法,他会收到消息:)
【解决方案2】:

您使用了错误 @Id 注释 (import org.springframework.data.annotation.Id;)

改用import javax.persistence.Id;

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2016-03-20
    • 2014-08-14
    • 2012-07-30
    • 2011-10-28
    • 2010-11-13
    • 1970-01-01
    • 1970-01-01
    • 2023-03-24
    相关资源
    最近更新 更多