springboot扫描父实体

piztneat  于 2021-07-06  发布在  Java
关注(0)|答案(0)|浏览(173)

我正在为一个旧应用程序开发restapi。
当我启动服务并开始使用它时,我有一个例外:
java.lang.illegalargumentexception:Persistentity必须具有identifier属性!
实际上,我的对象上没有id字段,而是它的父对象上的id字段。

@Entity
public class Object extends AbstractObject {
...
}

@MappedSuperclass
@Access(AccessType.PROPERTY)
public abstract class AbstractObject {

    protected ObjectProperty<Long> id = new SerializableSimpleObjectProperty<>();

    public classAbstractObject () {
    }

    @Id
    @GeneratedValue(strategy=GenerationType.SEQUENCE, generator = "idgen")
    public Long getId() {
        return id!=null?id.get():null;
    }

    public ObjectProperty<Long> idProperty() {
        return id;
    }

    public void setId(Long id) {
        this.id.set(id);
    }

... }
这是我的控制器:

@RestController
@RequestMapping("/object")
public class ObjectController {

    @Autowired
    private ObjectRepository objectRepository;

    @GetMapping
    public Object getObjects() {
        return this.objectRepository.findAll();
    }

    @RequestMapping(method = RequestMethod.GET, path="/getByField", params = {"field"})
    public Object getByField(@QueryParam("field") String field) {
        return this.objectRepository.findByField(field);
    }

我错过什么了吗?
谢谢你的帮助!

暂无答案!

目前还没有任何答案,快来回答吧!

相关问题