簡體   English   中英

Spring Data JPA findAll() 從 MySQL db 返回空列表

[英]Spring Data JPA findAll() returns empty list from MySQL db

我是 Spring 的新手。我正在嘗試從 MYSQL 數據庫中獲取一些數據。 不幸的是 spring data jpa 返回空列表。 但是 db 中存在一條記錄:如何訪問該記錄?

mysql mysql2

libraryRepository.java

public interface LibraryRepository extends JpaRepository<Library, String>,LibraryRespositoryCustom{

}

庫控制器.java

@RestController
public class LibraryController {

@Autowired
LibraryRepository repository;

@Autowired
LibraryService libraryService;

@GetMapping("/getAllBooks")
public ResponseEntity<List<Library>> getAllBooks(){
    return ResponseEntity.ok(repository.findAll());
}

應用程序屬性

# Datasource
spring.datasource.url=jdbc:mysql://localhost:3306/APIDevelopSpringBoot?useSSL=false&serverTimezone=UTC
spring.datasource.username=root
spring.datasource.password=root
#spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
spring.datasource.driver-class-name=com.mysql.jdbc.Driver

#com.mysql.jdbc.Driver




spring.jpa.generate-ddl=true

# Jpa/Hibernate :
spring.jpa.show-sql=true
spring.jpa.properties.hibernate.dialect = org.hibernate.dialect.MySQL5InnoDBDialect

#spring.jpa.database-platform = org.hibernate.dialect.MySQL5Dialect
spring.jpa.hibernate.ddl-auto = update
spring.test.database.replace=none



#Generate Logs
logging.file.name=log/application.log

#spring.profiles.active=dev

spring.main.allow-circular-references: true

圖書館.java

@Data
@Entity
@Table(name="LibraryDemo")
public class Library {
    
    @Column(name="book_name")
    private String book_name;
    @Id
    @Column(name="id")
    private String id;
    @Column(name="isbn")
    private String isbn;
    @Column(name="aisle")
    private int aisle;
    @Column(name="author")
    private String author;

}
select library0_.id as id1_0_, library0_.aisle as aisle2_0_, library0_.author as author3_0_, library0_.book_name as book_nam4_0_, library0_.isbn as isbn5_0_ from library_demo library0_

正如我們在此查詢中看到的,它正在查詢表 library_demo,但您有一個名為 LibraryDemo 的表。 因此,您必須將名稱更改為 library_demo。

您需要將表名設為 library_demo 才能正常工作。 無論您給出什么名稱,它都會被 _ 格式替換。

嘗試這個

@Entity
@Table(name = "library_demo")
public class Library {...}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM