Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/spring/14.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 boot 2 jpa生成的数据查询错误_Java_Spring_Hibernate_Spring Boot_Spring Data Jpa - Fatal编程技术网

Java spring boot 2 jpa生成的数据查询错误

Java spring boot 2 jpa生成的数据查询错误,java,spring,hibernate,spring-boot,spring-data-jpa,Java,Spring,Hibernate,Spring Boot,Spring Data Jpa,我有两个实体Transaction和Statement,我试图找到没有与之关联的语句的交易 @SuppressWarnings("serial") @MappedSuperclass @ToString @Getter @Setter @RequiredArgsConstructor @EntityListeners(AuditingEntityListener.class) abstract class Template implements Serializable, Cloneable {

我有两个实体
Transaction
Statement
,我试图找到没有与之关联的语句的交易

@SuppressWarnings("serial")
@MappedSuperclass
@ToString
@Getter
@Setter
@RequiredArgsConstructor
@EntityListeners(AuditingEntityListener.class)
abstract class Template implements Serializable, Cloneable {

    @Id
    @Column(unique = true)
    private String id = UUID.randomUUID().toString();

    .... auditing equals and hash methods here

}
我不确定这是否是SpringDataJPA中的错误,或者我在这里做了一些错误的事情,这在SpringBoot1.5.1.RELEASE中正常工作,但在升级到SpringBootV2.0.3.RELEASE后出现了这个问题

spring boot v2.0.3.0版本依赖项包括 spring boot starter数据jpa 2.0.3.0版本
hibernate.version 5.2.17.Final

如果使用
@Query
Spring数据(大部分)只会将查询传递给JPA实现。所以这听起来像是在JPA实现的SQL生成中出了问题。您可能希望使用所使用的JPA实现标记问题,并添加实现的版本。另外,玩弄这个版本可能会有所帮助。
@Entity
@Getter
@Setter
@RequiredArgsConstructor
class Transaction extends Template {

    .... more here

    @OneToOne(cascade = CascadeType.ALL, mappedBy = "transaction")
    private Statement statement;

}
@Entity
@ToString
@Getter
@Setter
@RequiredArgsConstructor
class Statement extends Template {

.... more here

    @OneToOne(optional = false)
    private Transaction transaction;


}
@RepositoryRestResource
interface TransactionRepository extends JpaRepository<Transaction, String> {

    //@Query("select transaction from Transaction transaction where statement is null ")
    Collection<Transaction> findByStatementIsNull();

}
select transactio0_.id as id1_45_, transactio0_.created_date as created_2_45_, transactio0_.creator as creator3_45_, transactio0_.modified_date as modified4_45_, transactio0_.modifier as modifier5_45_, transactio0_.aggregate_id as aggrega16_45_, transactio0_.amount as amount6_45_, transactio0_.billing_address_id as billing17_45_, transactio0_.blacklisted as blacklis7_45_, transactio0_.connection_id as connect18_45_, transactio0_.credit_card_id as credit_19_45_, transactio0_.currency as currency8_45_, transactio0_.customer_id as custome20_45_, transactio0_.description as descript9_45_, transactio0_.device_id as device_21_45_, transactio0_.electronic_check_id as electro22_45_, transactio0_.fraud_status as fraud_s10_45_, transactio0_.gateway_id as gateway23_45_, transactio0_.independent_sales_organization_id as indepen24_45_, transactio0_.issue_payment_id as issue_p25_45_, transactio0_.merchant_id as merchan26_45_, transactio0_.order_id as order_i11_45_, transactio0_.process_type as process12_45_, transactio0_.recurring_id as recurri27_45_, transactio0_.shipping_address_id as shippin28_45_, transactio0_.store_id as store_i29_45_, transactio0_.transaction_id as transac13_45_, transactio0_.transaction_status as transac14_45_, transactio0_.transaction_type as transac15_45_, transactio0_.wallet_account_id as wallet_30_45_ 
from billing_transaction transactio0_ 
where transactio0_.id is null