Mysql
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Mysql

Dữ liệu mùa xuân với kiểu Mysql JSON

Theo Dữ liệu mùa xuân Phụ lục D của Tài liệu:Các kiểu trả về truy vấn kho lưu trữ , các loại được hỗ trợ duy nhất là:void, nguyên thủy, Wrapper type, T, Iterator, Collection, List, Optional, Stream, Future, CompletableFuture, ListenableFuture, Slice, Page, GeoResult, GeoResults, GeoPage.

Như bạn có thể thấy, hiện tại, nó không được hỗ trợ. Một trong những ý tưởng đằng sau nó mà tôi nghĩ rằng đó chưa phải là ý thức chung của tất cả các cơ sở dữ liệu.

Rõ ràng, bạn có thể sử dụng bộ lưu trữ này dưới dạng Json và tạo bộ chuyển đổi cho nó:

  @Column(name = "configuration", nullable = false)
  @Convert(converter = PluginAnalyzerConfigConverter.class)
  private PluginAnalyzerConfig configuration;

và:

public class PluginAnalyzerConfigConverter implements
    AttributeConverter<PluginAnalyzerConfig, String> {

  @Override public String convertToDatabaseColumn(PluginAnalyzerConfig config) {
    Gson parser = new Gson();
    return parser.toJson(config, PluginAnalyzerConfig.class);
  }

  @Override public PluginAnalyzerConfig convertToEntityAttribute(String source) {
    Gson parser = new Gson();
    return parser.fromJson(source, PluginAnalyzerConfig.class);
  }
}

Rõ ràng rằng nếu không có cách tiếp cận đó, bạn sẽ không sử dụng Json một cách tốt đẹp như MySQL có thể làm được. Nhưng tôi nghĩ rằng không có vấn đề gì nếu bạn tạo các truy vấn chuyên biệt MySQL để tận dụng nó.




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Lưu trữ thẻ trong cơ sở dữ liệu. Lưu trữ thẻ một lần hay nhiều lần?

  2. PHP Lỗi nghiêm trọng:Uncaught PDOException:không thể tìm thấy trình điều khiển

  3. tạo mảng từ php truy vấn mysql

  4. LỖI 1148:Lệnh đã sử dụng không được phép với phiên bản MySQL này

  5. Cách sử dụng từ khóa Regex trong Phương pháp lưu trữ dữ liệu mùa xuân