当前位置: 首页 > 知识库问答 >
问题:

SpringData存储库错误

孙德宇
2023-03-14

我对SpringData和JPA有问题。当我向HomeRepository接口添加方法时,我得到一个错误。我使用的是JPararePository接口,在pom.xml文件中有一个MySQL数据库集。这些只是我对spring的开始,所以我需要一些了解spring的人的帮助。下面是我的代码和日志:

package com.kampusbaza.kampusbaza.model;

import javax.persistence.*;
import java.io.Serializable;

@Entity
@Inheritance(strategy = InheritanceType.SINGLE_TABLE)
@Table(name= "User")
public class User implements Serializable {
    private static final long serialVersionUID = 1L;
    @Id
    @GeneratedValue
    @Column
    private Long iduser;
    @Column(columnDefinition = "VARCHAR(30) NOT NULL")
    private String name;
    @Column(columnDefinition = "VARCHAR(30) NOT NULL")
    private String surname;
    @Column(columnDefinition = "VARCHAR(45) NOT NULL")
    private String email;
    @Column(columnDefinition = "VARCHAR(20) NOT NULL")
    private String password;

    public User() {
    }

    public User(String name, String surname, String email, String password) {
        this.name = name;
        this.surname = surname;
        this.email = email;
        this.password = password;
    }

    public Long getIduser() {
        return iduser;
    }

    public void setIduser(Long iduser) {
        this.iduser = iduser;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public String getSurname() {
        return surname;
    }

    public void setSurname(String surname) {
        this.surname = surname;
    }

    public String getEmail() {
        return email;
    }

    public void setEmail(String email) {
        this.email = email;
    }

    public String getPassword() {
        return password;
    }

    public void setPassword(String password) {
        this.password = password;
    }

    @Override
    public String toString() {
        return "User[" +
                "id=" + iduser +
                ", name='" + name + '\'' +
                ", surname='" + surname + '\'' +
                ", email=" + email +
                ", password=" + password +
                ']';
    }
}

主页库:

package com.kampusbaza.kampusbaza.repository;

import org.springframework.data.jpa.repository.JpaRepository;

import java.io.Serializable;
import java.util.List;

@NoRepositoryBean
public interface HomeRepository<T, ID extends Serializable> extends 
JpaRepository<T, ID> {
void delete(T deleted);
<S extends T> S save(S entity);
List<T> findAll();
}

用户存储库:

 package com.kampusbaza.kampusbaza.repository;


import com.kampusbaza.kampusbaza.model.User;
import org.springframework.data.jpa.repository.JpaRepository;
import org.springframework.stereotype.Repository;
import java.io.Serializable;
public interface UserRepository extends HomeRepository<User, Long>  {
}

日志:

共有1个答案

谢烨烨
2023-03-14

您的homeRepository没有任何用处。您正在定义的方法已经存在于接口jparepository中,因此只需使userrepository扩展该接口即可:

public interface UserRepository extends JpaRepository<User, Long>  {
}

这应该可以解决你的问题。

 类似资料:
  • 问题内容: 是否可以使用Spring Data创建只读存储库? 我有一些链接到视图的实体,还有一些子实体,我想为其提供一个存储库,其中包含的某些方法,以及带有批注的某些方法。我想避免提供像和这样的方法,因为它们没有意义,并且可能会产生错误。 谢谢! 问题答案: 是的,方法是添加手工制作的基础存储库。您通常使用以下内容: 现在,您可以使刚刚定义的具体回购扩展: 定义基本存储库的关键部分是,方法声明

  • 我尝试将Springboot(V1.5.4)应用程序与Hazelcast集群连接起来,以查找存储的数据。为此,我使用了一个hazelcast-client实例,并创建了一个HazelcastRepository来搜索我的数据。 问题是,当我启动我的应用程序时,我总是得到这个Spring错误: org.springframework.beans.factory.BeanCreationExcepti

  • 搜索仓库和镜像 你可以使用 Docker 来搜索所有公开可用的仓库和镜像。 $ docker search ubuntu 这将通过 Docker 提供的关键字匹配来显示您可用的仓库列表。 私有仓库将不会显示到仓库搜索结果上。你可以通过 Docker Hub 的简况页面来查看仓库的状态。 仓库 你的 Docker Hub 仓库有许多特性。 stars 你的仓库可以用星被标记,你也可以用星标记别的仓

  • Spring云配置框架: 我正在尝试将java项目中的SpringCloud配置与后端存储库git(即bitbucket)集成。基本上,我在不同的场合更频繁地遇到两个错误。 在上述情况下,它使用缓存版本和tomcat/undertow服务器启动,没有任何问题。 Git版本: git版本2.24。0 错误1:git-上传-包 2020-04-11 00:00:20-克隆到基目录时发生WARN错误。

  • 我的应用程序在打开时会生成一个。我可以使用加密文本,但当我尝试使用解密时,它会抛出。 某些调试: 生成: 函数: 函数:

  • 我正在尝试实现一个简单的REST服务,该服务基于具有Spring启动和Spring数据Rest的JPA存储库。(请参阅此教程)如果将以下代码与 gradle 一起使用,则运行良好: 为了让事情变得更简单,我使用Spring boot CLI(“Spring run”命令)尝试了相同的代码。 不幸的是,这似乎不起作用@RepositoryRestResource似乎无法像@RestControlle