Konwerter JSON do Scala
Konwertuj dane JSON na kod Scala. Generuj case class Scala z typami Option do programowania funkcyjnego. Bezpłatny, działa w przeglądarce.
Wejście JSON
Wyjście Scala
Czym jest konwerter JSON do Scala?
Scala używa case class do danych strukturalnych. Gdy używasz JSON z Circe lub Play JSON, potrzebne są odpowiednie definicje case class. Specyfikacja JSON definiuje obiekty, tablice, ciągi znaków, liczby i wartości logiczne, ale Scala wymaga jawnych definicji dla każdego zagnieżdżonego obiektu.
To narzędzie generuje case class Scala z JSON. Włącz Case Class dla niezmiennych danych. Włącz typy Option dla pól opcjonalnych. Wyjście działa z Circe, Play JSON lub json4s.
Konwersja odbywa się w całości w przeglądarce. JSON nie jest wysyłany na żaden serwer.
Kiedy JSON do Scala jest przydatny
Gdy tworzysz aplikacje Scala lub Akka korzystające z REST API i potrzebujesz typowanych case class. Wklej przykładową odpowiedź tutaj, aby wygenerować odpowiednie klasy.
Jak używać tego narzędzia
Wklej lub wczytaj JSON
Skopiuj JSON i wklej go do edytora po lewej. Możesz też kliknąć Wczytaj, aby załadować plik. Użyj przycisku Przykład dla danych testowych. Ustaw nazwę case class i opcje w panelu ustawień.
Przejrzyj wygenerowane klasy
Panel po prawej pokazuje wygenerowane case class Scala. Zagnieżdżone obiekty stają się oddzielnymi case class. Tablice stają się List[T]. Jeśli składnia JSON jest nieprawidłowa, użyj najpierw Formatera JSON lub Walidatora JSON, aby ją poprawić.
Kopiuj lub pobierz
Użyj Kopiuj lub Pobierz, aby uzyskać kod. Wklej do swojego projektu Scala. Dodaj Circe lub Play JSON do buildu dla parsowania JSON.
Przykłady JSON do Scala
Przykład generowania case class Scala z obiektu JSON.
Przykład: Rekord abonenta
Wejście JSON:
Wygenerowane wyjście Scala:
Kiedy JSON do Scala jest przydatny
Większość programistów potrzebuje tego podczas integracji REST API. Wklej tutaj i uzyskaj case class do użycia z Circe lub Play JSON.
Jeśli najpierw musisz scalić dwa pliki JSON, istnieje osobne narzędzie do Scalania JSON.
Odpowiedzi API, pliki konfiguracyjne lub eksporty danych są często w formacie JSON. Uruchom tutaj, aby wygenerować case class Scala.
Często zadawane pytania
Case class vs zwykła klasa?
Case class są domyślnie niemutowalne i dostarczają equals, hashCode, copy. Dobrze współpracują z Circe i Play JSON.
Option dla pól null?
Włącz typy Option dla opcjonalnych pól JSON. Opakowuje pola nullable w Option[T].
Czy dane są gdzieś wysyłane?
Nie. Generowanie odbywa się całkowicie w przeglądarce. Żadne dane nie są wysyłane na serwer.
Czy można używać z Circe?
Tak. Wygenerowane case class działają z Decoder i Encoder Circe. Dodaj io.circe %% "circe-generic" dla automatycznej derywacji.
Co dzieje się z zagnieżdżonymi obiektami?
Zagnieżdżone obiekty JSON stają się oddzielnymi Scala case class. Tablice stają się List[T] tych typów.
Powiązane narzędzia
JSON w Scala — patrz Circe i Play JSON. JSON — patrz specyfikacja JSON.