sql >> Database teknologi >  >> RDS >> Mysql

Android - Ruby on Rails - MySQL

Her er en kort oversigt over, hvad du bør vide for at nå dit mål. Jeg vil ikke gå så langt i detaljer, især da jeg aldrig personligt har brugt RoR. Bemærk, at nogle af disse dele muligvis ikke relaterer nøjagtigt til RoR, men den generelle idé bag det gælder stadig. Jeg vil lade det være op til dig at undersøge og finde ud af, hvordan du implementerer hver enkelt komponent.

Den generelle strøm af alt er som følger:

Android App <==> Netværk <==> Webtjeneste <==> MySQL

Bemærk de dobbeltkantede pile, da data vil flyde i begge retninger.

Android App er klienten og Web Service og MySQL databasen er placeret på din Web Server . Jeg inkluderede kun netværksdelen for fuldstændighedens skyld, men du skal ikke gøre noget, når først dataene er blevet sendt til netværket.

En kort oversigt over hvert afsnit:

Android-app:

Android-appen er den klient, der sender og henter data fra webserveren. Jeg går ud fra, at du i din app vil tillade brugeren at udføre nogle opgaver, som i det væsentlige bliver de data, du vil sende til serveren på et tidspunkt.

Tag for eksempel, brugeren skal kunne indtaste sit navn og yndlingsdyr. Lad os sige, at der er en faktisk "Send"-knap, som brugeren kan klikke på. Når du klikker på denne "Send"-knap, bør den pakke dataene ind i et korrekt format, så de sendes på tværs af netværket. To af de mest almindelige er JSON og XML . Når dataene er blevet formateret korrekt, vil du gerne sende dataene til serveren ved hjælp af en eller anden type netværksprotokol såsom HTTP . For at kunne sende dataene skal du selvfølgelig have en URL som mål. Lad os sige, at målet er www.example.com/webservice.php . Dette mål er vores webservice placeret på webserveren.

Når du har sendt dataene, vil serveren svare med nogle data, hvorefter du kan gøre, hvad du vil med dem. Vis det måske til brugeren, eller sæt det i en SQLite database, eller endda begge dele.

Det vigtigste at huske er, at der ikke foregår magi. Alt, hvad jeg lige har beskrevet, vil blive implementeret i Java-kode, som du vil skrive i din Android-applikation på et tidspunkt.

Nøgleideer, du bør undersøge mere og finde ud af, hvordan du implementerer i Java-kode:

  • JSON og XML
  • HTTP i Java
  • HVILE og SÆBE
  • Her er en fremragende video om mulige måder at konfigurere strukturen af ​​din Android-app på.
  • Sørg for, at du udfører alle netværkshandlinger i din Android-app på en anden tråd. En nem at bruge metode er en Intent Service .

Webtjeneste:

Dette er ofte den mest forvirrende del. En Web Service er simpelthen et indgangspunkt for klienter, der forsøger at få adgang til Web Server . Min forklaring her kan variere lidt, når jeg bruger RoR , men den samme idé gælder. Bemærk ovenfor, at målet URL var www.example.com/webservice.php . Webtjenesten er bogstaveligt talt PHP kode, der findes på webserveren, kaldet webservice.php . I din Android-app, når du sender data til målet URL ved hjælp af HTTP , vil webtjenestekoden blive eksekveret på serveren (og har også adgang til de data, du sendte til den). Inde i din webservicekode vil du dybest set udtrække dataene (som er i et format som JSON), få ​​fat i de nødvendige dele og derefter gøre noget med dem. I dette tilfælde vil du højst sandsynligt forespørge i databasen. I PHP er det nemt at skrive kode, der forbinder og forespørger på en MySQL-database, der også kører på serveren. Når svaret fra databasen er hentet af webserveren, kan du sende det tilbage til Android-appen. Ligesom før, husk, at der ikke foregår magi. Alle disse ideer implementeres ved at skrive noget kode.

Vigtigste idéer til forskning:

  • Ruby on Rails-webservice
  • Sådan får du adgang til en MySQL-database ved hjælp af Ruby on Rails

MySQL-database:

Det er her du gemmer dataene på webserveren. Jeg har ikke tænkt mig at gå det i dybden her, fordi det bare vil kræve, at du læser en masse op om, hvordan du opsætter en MySQL-database på en webserver. Det er også vigtigt, at du lærer, hvordan du opretter de relevante forespørgsler såsom SELECT , INSERT og så videre.

Vigtigste ideer til forskning:

Sådan opsætter du en MySQL-database på en webserver

Hvis du har brug for nogen afklaring, så lad mig det vide!




  1. Laravel 5.2 - Brug en streng som en tilpasset primær nøgle til veltalende tabel bliver 0

  2. Hvilke tegn er faktisk i stand til at forårsage SQL-injektion i MySQL?

  3. Java Hibernate Check MySQL-replikering er synkroniseret

  4. Synkroniseret udførelse af lagrede procedurer i mysql