1. 程式人生 > >中文程式碼之Spring Boot對H2資料庫簡單查詢 2018-08-24

中文程式碼之Spring Boot對H2資料庫簡單查詢 2018-08-24

續前文: 中文程式碼之Spring Boot整合H2記憶體資料庫

在詞條中新增英文術語域:

@Entity
public class 詞條 {

  @Id
  private long id;
  private String 英文術語;
  private String 中文術語;

  public 詞條() {
  }
  
  public 詞條(long id, String 英文術語, String 中文術語) {
    this.id = id;
    this.英文術語 = 英文術語;
    this.中文術語 = 中文術語;
  }

  public
long getId() { return id; } public String get中文術語() { return 中文術語; } public String get英文術語() { return 英文術語; } }

宣告查詢方法(Spring支援特定命名格式的查詢方法, 參考: https://docs.spring.io/spring-data/jpa/docs/1.8.x/reference/html/#repositories.query-methods)

@Repository
public interface 詞庫介面 extends
JpaRepository<詞條, Long> { List<詞條> findBy英文術語(String 英文術語); }

在控制器中用資料庫查詢代替原本的內建Map查詢:

@RestController
public class 詞典控制器 {

  private static final Logger 筆錄 = LoggerFactory.getLogger(詞典控制器.class);

  @Autowired
  private 詞庫介面 詞庫;

  @GetMapping("/")
  @ResponseBody
  public List<
詞條> 取詞條(@RequestParam(name = "term", required = false, defaultValue = "") String 英文術語) { 筆錄.info("輸入: " + 英文術語); return 詞庫.findBy英文術語(英文術語); } }

訪問線上演示地址: http://74.91.17.250:8090/?term=List 返回:

[
  {
    id: 3,
    英文術語: "List",
    中文術語: "列表"
  }
]

繼續欠測試.