Spring Data JPA存储库findAll()方法返回null List

时间:2017-08-08 16:50:21

标签: spring hibernate spring-data

我正在使用Spring Data JPA:

String fullText;

for (EditText editText in editTexts) {
    fullText += editText.getText().toString();
}

textView.setText(fullText);

使用Spring 4.3.7.RELEASE和Hibernate 5.2.9.Final。

当我使用findAll查询时,List返回包含空值。

实体:

<dependency>
    <groupId>org.springframework.data</groupId>
    <artifactId>spring-data-jpa</artifactId>
    <version>1.7.1.RELEASE</version>
</dependency>

注意:注意问题不是来自lombock,我已经测试了getter和setter。

存储库:

@Getter
@Setter
@NoArgsConstructor
@AllArgsConstructor
@EqualsAndHashCode
@Entity
public class Etudiant implements Serializable {

    /**
     * Serial version UID
     */
    private static final long serialVersionUID = -1982480763983112005L;

    @Id
    @GeneratedValue(strategy = GenerationType.AUTO)
    @Column(name = "idEtudiant")
    private Integer idEtudiant;

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

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

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

    @Column(name = "dateNaissance")
    private Date dateNaissance;

    @ManyToMany(fetch = FetchType.LAZY)
    @JoinTable(name = "etudiant_cours", joinColumns = @JoinColumn(name = "idEtudiant", referencedColumnName = "idEtudiant"), inverseJoinColumns = 
    @JoinColumn(name = "idCours", referencedColumnName = "idCours"))
    private List<Cours> cours;
}

服务:

@Repository
public interface EtudiantRepository extends JpaRepository<Etudiant, Integer> {     
}

Debug result

3 个答案:

答案 0 :(得分:1)

在调试屏幕截图中,可以看到etudiantRepository为null。 也许您在配置中缺少@EnableJpaRepositories注释。

使用依赖注入或使用new关键字

实例化EtudiantServiceImpl

答案 1 :(得分:0)

您需要在xml配置中使用context:component-scan注释来扫描基础包和存储库包,您可以在下面找到代码:

<jpa:repositories base-package="com.demo.test.repository" />
<context:component-scan annotation-config="true"
        base-package="com.demo.test" />

并且如果findall()返回null值,这意味着表没有数据表,这是正常行为。  并检查您的数据源和实体管理器连接

答案 2 :(得分:0)

最后我找到了解决方案:

将spring version从4.3.7.RELEASE更改为4.3.10.RELEASE