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数据JPA方法是什么_Java_Hibernate_Spring Data Jpa - Fatal编程技术网

Java 以下查询的Spring数据JPA方法是什么

Java 以下查询的Spring数据JPA方法是什么,java,hibernate,spring-data-jpa,Java,Hibernate,Spring Data Jpa,我试图使用SpringDataJPA,我有一个包含许多字段的Jobs表。我需要作业列表表中的列表WebCart\u Id。与下面的查询类似: 从作业中选择WebCart\u作业\u id; 我正在存储库中使用此方法,但它给出了以下错误: public List<Long> findAllByjobSequenceId(Collection<Jobs> jobList); 我的职业课: @Table(name = "jobs") @Entity public class

我试图使用SpringDataJPA,我有一个包含许多字段的Jobs表。我需要作业列表表中的列表WebCart\u Id。与下面的查询类似: 从作业中选择WebCart\u作业\u id; 我正在存储库中使用此方法,但它给出了以下错误:

public List<Long> findAllByjobSequenceId(Collection<Jobs> jobList);

我的职业课:

@Table(name = "jobs")
@Entity
public class Jobs implements Serializable {

    private static final long serialVersionUID = -6118237317414158154L;

    @Id
    @GeneratedValue(strategy = GenerationType.IDENTITY)
    @Column(name = "id")
    private Long Id;

    @Column(name = "webcrt_job_id")
    private Long jobSequenceId;

    @Column(name = "component_id")
    private Long componentId;

    @Column(name = "shop_id")
    private Long shopId;

    @Column(name = "job_number")
    private String jobNumber;

    @Column(name = "job_description")
    private String jobDescription;

    @Column(name = "status")
    private String status;

    @Column(name = "customer_name")
    private String customerName;

    @Column(name = "receipt_date")
    private Date receiptDate;

    @Column(name = "shipment_date")
    private Date shipmentDate;

    @Column(name = "turbine_serial_number")
    private String turbineSerialNumber;

    @Column(name = "creation_date")
    private Date creationDate;

    @Column(name = "created_by")
    private String createdBy;

    @Column(name = "last_updated_date")
    private Date updatedDate;

    @Column(name = "last_updated_by")
    private String updatedBy;

    @Column(name = "is_delete")
    private String isDelete;

    public Jobs() {
    }

按照您喜欢的方式命名方法,并使用
@Query
对其进行注释:

@Query("select j.jobSequenceId from Jobs j")
public List<Long> findAllJobSequenceIds();
@Query(“从作业j中选择j.jobSequenceId”)
公共列表findAllJobSequenceIds();

由于
作业
的实例代表一个作业,因此类应命名为
作业
,而不是
作业
,以您喜欢的方式命名方法,并用
@Query
对其进行注释:

@Query("select j.jobSequenceId from Jobs j")
public List<Long> findAllJobSequenceIds();
@Query(“从作业j中选择j.jobSequenceId”)
公共列表findAllJobSequenceIds();

既然
Jobs
的一个实例代表一个job,那么类应该命名为
job
,而不是
Jobs
,既然已经有了作业集合,为什么还要再次查询数据库?只需迭代集合并收集jobSequenceId


顺便说一下。。。异常表示您将按jobSequenceId进行查询,而不是将结果限制为jobSequenceId。因此,该方法需要一个包含您正在查询的SequenceID的列表。

既然已经有了作业集合,为什么还要再次查询数据库?只需迭代集合并收集jobSequenceId



顺便说一下。。。异常表示您将按jobSequenceId进行查询,而不是将结果限制为jobSequenceId。因此,该方法需要一个包含您正在查询的SequenceID的列表。

我认为应该是find或findAll。SQL中没有WHERE子句。我认为应该是find或findAll。SQL中没有WHERE子句。我同意重命名作业。但我认为这里使用的是基于方法的查询,因此只有DAOI接口,没有具体的实现。因此,问题是如何命名方法。当使用基于方法的查询时,我认为不支持将结果限制为一个属性。您不需要为该方法提供任何实现。只需将该方法添加到DAO接口,如上图所示进行注释。基于方法的查询适用于非常简单的情况。是的,这将是正确的方法。但看起来作业集合已经存在,因为它是作为参数传递的。所以我不明白为什么从完全填充的实体中查询单个属性…@sromit它不是本机查询。本机qery是一个SQL查询。这是一个JPQL查询。我同意重命名作业。但我认为这里使用的是基于方法的查询,因此只有DAOI接口,没有具体的实现。因此,问题是如何命名方法。当使用基于方法的查询时,我认为不支持将结果限制为一个属性。您不需要为该方法提供任何实现。只需将该方法添加到DAO接口,如上图所示进行注释。基于方法的查询适用于非常简单的情况。是的,这将是正确的方法。但看起来作业集合已经存在,因为它是作为参数传递的。所以我不明白为什么从完全填充的实体中查询单个属性…@sromit它不是本机查询。本机qery是一个SQL查询。这是一个JPQL查询。实际上,我们正在尝试将一个数据库与另一个数据库同步,因此我们希望检查一个数据库与另一个数据库的最新数据,但当您有作业集合时,您也有JobSequenceID。。。或者我遗漏了什么?实际上我需要从目标数据库获取SequenceID列表,以便我可以从源数据库添加额外的SequenceID(作业)。实际上我们正在尝试将一个数据库与另一个数据库同步,因此,我们希望用另一个数据库检查一个数据库的最新数据,但当您有作业集合时,您也有JobSequenceID。。。或者我遗漏了什么?实际上,我需要从目标数据库获取SequenceID列表,以便从源数据库添加额外的SequenceID(作业)