
Satura rādītājs:
- 1. darbība. Kas jums būs nepieciešams
- 2. darbība. Datu bāzes iestatīšana
- 3. darbība: NetBeans iestatīšana
- 4. solis: mūsu galvenās klases kodēšana
- 5. darbība: definējiet mūsu izveidošanas () metodi
- 6. darbība: mūsu lietojumprogrammas kodēšana
- 7. solis: mūsu burkas faila apkopošana un iesaiņošana
- 8. solis: Apsveicam
2025 Autors: John Day | [email protected]. Pēdējoreiz modificēts: 2025-01-23 14:59



Vai esat kādreiz vēlējies izveidot lietojumprogrammu, kas darbotos dinamiskā datu bāzē, ar kuru ir viegli strādāt, kas ļautu lietotājiem, kuri neprot tehniku, ievadīt datus un neiztukšotu uzņēmuma resursus? Nu, tad man jums ir risinājums. Šodien mēs veidosim lietojumprogrammu, kas darbojas pakalpojumā Google disks (konkrēti, Google izklājlapas) un kuru var izmantot dažādiem mērķiem. Lai gan šajā apmācībā galvenā uzmanība tiks pievērsta uz notikumiem balstītas lietotnes izveidošanai, lai parādītu notikumu sarakstu, kas notiek ap koledžas pilsētiņu, šo projektu var viegli pārrakstīt, lai tas darbotos dažādos veidos, neatkarīgi no tā, vai tā ir kalkulatora lietotne lietotnei, kas uzrauga produktu krājumi. Esmu pievienojis sava pieteikuma kopiju, ja vēlaties redzēt, ko mēs gatavosim. Izsaiņojiet zip failu un palaidiet tajā esošo JAR. Un tagad, bez papildu piepūles, sāksim!
1. darbība. Kas jums būs nepieciešams
Lai sāktu darbu ar šo projektu, jums būs nepieciešami šādi resursi:
-
Netbeans
Es iesaku lejupielādēt Java EE, jo tas nodrošina servera atbalstu, bet, ja nevēlaties nevajadzīgus failus vai papildu vietas diskā, arī Java SE darbosies. Netbeans kalpos kā IDE mūsu lietojumprogrammas kodēšanai un apkopošanai
-
Jsoup
Es to iekļāvu instrukcijās, lai jūs varētu lejupielādēt. Tas ir HTML parsētājs, kas ļaus mums iegūt informāciju no publicētās izklājlapas
-
Java SDK (V8)
Lejupielādējiet jebkuru jūsu sistēmai piemērotu failu. Ja jums jau ir Java SDK iepriekšējā versijā, iesaku atjaunināt. Dažās manās funkcijās tiek izmantotas jaunas lambda izteiksmes, kas raksturīgas v8. Versijai, un kods var nedarboties bez tām atkarībā no tā, ko jūs darāt
-
Visual Studio (pēc izvēles)
Pilnīgi pēc izvēles. Lai gan NetBeans lieliski darbojas mūsu lietotnes apkopošanā un iesaiņošanā, es neesmu milzīgs attīstības studijas cienītājs. Es gribētu kodēt VS, jo tam ir jaukāks interfeiss. Ja jums tas nepatīk, tiešsaistē ir daudz citu IDE, tāpēc atrodiet to, kas jums patīk vislabāk
-
Sākuma kods
Es esmu iekļāvis sākuma kodu šī resursos un arī publicējis to vietnē GitHub. Šajā gadījumā man ir galvenais fails (notikums), kas nodrošina tā faila struktūru, kurā faktiski darbojas lietotne, kā arī EventTester, kas izmanto JavaFX, lai izveidotu lietotnes GUI. Ja vēlaties iegūt pilnīgu pieredzi, neiesakām kopēt un ielīmēt. Nesteidzieties un izlasiet šo
Citi:
Pamatzināšanas par Java. Būs noderīgi zināt Java, piemēram, rakstīšanas funkcijas, objektu izveidi utt
2. darbība. Datu bāzes iestatīšana

Lai sāktu projektu, mums vispirms jāiedziļinās Google diskā un jāizveido lapa, kuru izmantosim, lai palaistu mūsu lietojumprogrammu. Dodieties uz vietni drive.google.com un augšējā kreisajā stūrī noklikšķiniet uz ikonas “Jauns” un zem tā atlasiet “Izklājlapas”.
Kad lapa ir ielādēta, dodieties uz priekšu un pārdēvējiet to par kaut ko viegli atpazīstamu. Pēc tam dodieties uz priekšu un aizpildiet augšējo rindu ar savu datu nosaukumiem, piemēram, lietām, kuras ievietojat katrā slejā. Aplūkojot savu piemēru šeit, augšējo rindu esmu apzīmējis ar tādām lietām kā "Notikuma nosaukums", "Datums" utt.
Pēc tam sāciet aizpildīt izklājlapu ar datiem, kurus vēlaties aizpildīt. Neaizmirstiet formatēt visus savus datus līdzīgi, lai kods varētu ar to strādāt, neradot kļūdas. Piemēram, ja plānojat kodā izmantot datumus, uzmanīgi formatējiet katru datumu vienādi, pretējā gadījumā kods nevarēs to parsēt.
Pēc datu ievadīšanas publicējiet izklājlapu, dodoties uz "Fails" -> "Publicēt tīmeklī". No šejienes jūs vēlaties atlasīt visu dokumentu un pārliecināties, vai tas ir publicēts kā HTML fails, tādējādi mūsu lietotne varēs pareizi uzzīmēt datus. Pēc izklājlapas publicēšanas noteikti atzīmējiet tajā sniegto saiti. Tas būs vajadzīgs vēlāk lietotnē.
3. darbība: NetBeans iestatīšana

Tagad, kad mums ir izklājlapa, ir pienācis laiks iestatīt NetBeans, lai mēs varētu sākt kodēšanu. Pēc NetBeans un Java SDK lejupielādes un instalēšanas turpiniet un izveidojiet jaunu projektu. Izvēloties veidu, izvēlieties kategoriju "Java" un projektu "Java lietojumprogramma". Izvēlieties, kā vēlaties, lai jūsu projektu sauc (es savu nosaucu vienkārši par “Pasākumu”). Atzīmējiet izvēles rūtiņu blakus opcijai "izmantot īpašu mapi bibliotēku glabāšanai", kā arī atzīmi blakus opcijai "Izveidot galveno klasi". Pēc tam NetBeans vajadzētu izveidot projektu un projektu direktoriju, lai mēs varētu sākt strādāt, līdzīgi kā attēlā.
Pirms sākam kodēšanu, mums arī jāpārliecinās, ka NetBeans ir JSoup bibliotēka, kas būs nepieciešama, lai parsētu mūsu izklājlapu. Programmā NetBeans ar peles labo pogu noklikšķiniet uz ikonas "Bibliotēkas" zem sava projekta direktorija. Uznirstošajā izvēlnē atlasiet pogu, lai pievienotu.jar failu. Tagad dodieties uz vietu, kur ievietojāt jsoup lejupielādi (visticamāk, mapi Lejupielādes, ja vien neesat norādījis citur). Izvēlieties šo failu un pievienojiet to bibliotēkai. Ja NetBeans paplašināt mapi Bibliotēkas, tagad šajā jomā vajadzētu redzēt jsoup.jar. To darot, mēs tagad varam sākt lietotnes kodēšanu.
4. solis: mūsu galvenās klases kodēšana

Tātad, pirmais solis mūsu lietotnes kodēšanā ir jūsu galvenās klases izveide. Jūsu galvenā klase būs vieta, kur mēs veidosim savus objektus, būs metodes, kas mijiedarbojas ar JSoup, un daudz kas cits. Pieņemot, ka ikvienam, kas to lasa, ir pieredze kodēšanā, turpiniet un izmantojiet šādu importu:
importēt java.util. Collections;
importēt java.util. List;
importēt java.util. ArrayList;
importēt java.util. Date;
importēt java.util.stream. Stream;
importēt java.util.stream. Collector;
importēt java.text. SimpleDateFormat;
importēt java.text. ParseException;
importēt org.jsoup. Jsoup;
importēt org.jsoup.nodes. Document;
importēt org.jsoup.nodes. Element;
importēt org.jsoup.select. Elements;
importēt javafx.beans.property. SimpleStringProperty;
Tas var šķist daudz, un atkarībā no jūsu projekta viss var nebūt vajadzīgs. Turpinot kodēt, NetBeans informēs jūs, ja jums ir neizmantots imports, lai mēs vienmēr varētu tos izdzēst vēlāk. Tomēr tas mums šobrīd ir vajadzīgs.
Saņemot importa paziņojumus, dodamies uz priekšu un paziņojam par savu klasi. Ja, izstrādājot konkrētai klasei paredzētu objektu, plānojat izmantot datumus vai kādu citu pamata objektu, iesaku klases deklarācijai pievienot “īsteno salīdzināmu”. Tas ļaus jums salīdzināt objektus, kas ļaus jums vēlāk kārtot ClassObjects sarakstu. Kad esat to izdarījis, dodieties uz priekšu un paziņojiet visus nepieciešamos instanču mainīgos. Katrai publiskai virknei, kuru izveidojat, tai būs jāizveido arī SimpleStringProperty. Tie ir JavaFX objekti, kas ļaus mums vēlāk strādāt ar mūsu galvenajiem klases objektiem.
Tagad dodieties uz priekšu un paziņojiet, ka piekļūstat funkcijām. Ciktāl tas attiecas uz jūsu pamata mainīgajiem, varat nosaukt savas funkcijas neatkarīgi no tā, ko izvēlaties. Tomēr SSP piekļuves funkcijām jāizmanto formāts getFunctionNameHere (). Tas ir tāpēc, ka vēlāk mēs izmantosim JavaFX, lai izveidotu savienojumu ar šīm funkcijām, un funkcijām, kuras mēs izmantosim, ir jāsāk mūsu SSP funkcijas ar get. Jūs varat redzēt piemēru iepriekš.
Pēc visu piekļuves mainīgo definēšanas dodieties uz priekšu un definējiet visas citas funkcijas, kas jums varētu būt nepieciešamas. Tas ir ļoti specifisks lietotājam, jo funkcijas, kas jums nepieciešamas, atšķiras no projekta uz projektu. Ja jums nepieciešama iedvesma, pārbaudiet manu Javadoc vai faktisko kodu un skatiet dažas manis veiktās funkcijas. Piemēram, es izveidoju kārtošanas funkciju, kas kārto sarakstu pēc datuma, kā arī funkcijas, kas atgriež tikai notikumus ar publiskiem grupas statusiem un daudz ko citu. Lai gan ir pareizi padarīt šos statiskus, lai jūs varētu veikt dažas pārbaudes, iesaku pēc atkļūdošanas pabeigšanas neizmantot nekādas statiskas metodes, lai izvairītos no kļūdām, kad nonākam pie nākamā projekta posma.
5. darbība: definējiet mūsu izveidošanas () metodi

Tagad nāk, iespējams, vissvarīgākā koda daļa, kurā mēs definēsim mūsu izveidošanas () metodi, kas faktiski piekļūs mūsu vietnei un iegūs mums datus. Ir svarīgi atzīmēt, ka metodes deklarācijai būs jāpievieno metienu izņēmuma rinda, tāpēc mums nav jāraksta izmēģinājuma bloki mūsu kodā. Lai sāktu, dodieties uz priekšu un paziņojiet par savu objektu tukšu sarakstu. Manā gadījumā tā izskatījās
Notikuma notikumi = jauns ArrayList ()).
Tagad atrodiet URL, kuru iepriekš nokopējāt publicētajā izklājlapā. Pasludiniet šo saiti par virkni Java un nosauciet to, kā vēlaties. Tagad dodieties uz priekšu un paziņojiet jaunu Jsoup dokumentu. To var izdarīt, izveidojot jaunu dokumenta objektu, piemēram, Dokuments doc = jauns dokuments ();
Tagad dodieties uz priekšu un iestatiet savu dokumentu, lai izveidotu savienojumu ar mūsu URL un iegūtu datus. Lai to izdarītu, mēģiniet:
Dokuments doc = Jsoup.connect (url).get ();
Tagad mums ir jāiegūst mūsu dokumenta pamatteksts, kurā tiek glabāti faktiskie dati.
String body = doc.body (). Text ();
Tagad mums jāsāk izvilkt datus no ķermeņa. Tā kā mūsu dati ir tabulā (tā kā tā bija izklājlapa), mums ir jāizvelk tabula no ķermeņa. Pamēģināsim
Elementu tabula = doc.select ("tabula"). Get (0);
Tādējādi tiek atlasīta pirmā tabula. Šajā gadījumā ir tikai viens. Tagad ierakstiet
Elementu rindas = table.select ("tr");
Tādējādi iegūstam visas tabulas rindas.
Tātad tagad visi mūsu dati atrodas šajā rindu mainīgajā. Tas ir labi un viss, bet viss, rakstot šo funkciju šīs klases iekšienē, ir tāds, lai mēs varētu no tā izveidot objektus. Tātad, pirms mēs varam to atgriezt, mums ir jāizveido saraksts no mūsu rindām. Lai to izdarītu, mēs varam izmantot for cilpu. Man jāatzīmē, ka tas prasīja nelielu izmēģinājumu un kļūdas, lai izietu pareizi. Es sapratu, ka, izvelkot no rindām, daži mūsu dati šajā situācijā nav noderīgi, jo tie nodrošina tādas lietas kā atsevišķas lapas nosaukums, pirmā rinda ar mūsu datu idejām utt. Beigās es iestatīju sākotnējo ievadot cikla ciklam skaitli līdz 2, tādējādi tas apiet šos vienumus un var izveidot mūsu vienumus. Beigās es izstrādāju izskatu ar kodu
par (int i = 2; i <rows.size (); i ++) {
Elementa rinda = rindas.get (i);
Elementi cols = row.select ("td");
Tagad, lai izveidotu objektu, dariet kaut ko līdzīgu
Objekta nosaukums = jauns objekts (cols.get (0).text ());
Būtībā cols.get (0) iegūst datus no (i) rindas kolonnas (0) un pārvērš tos par virkni, kuru pēc tam var nodot objekta konstruktoram.
Pēc konstrukcijas iestatīšanas pievienojiet to sarakstam, kuru izveidojām iepriekš ar list.add (), piemēram, events.add (nosaukums);
Tagad aizveriet savu cilpu un izsauciet visas nepieciešamās funkcijas. Piemēram, es izsaucu savu kārtošanas funkciju, lai notikumus sakārtotu datuma secībā. Pēc tam atgrieziet savu sarakstu un tad esat pabeidzis šo sadaļu!
6. darbība: mūsu lietojumprogrammas kodēšana


Izveidojiet jaunu failu un nosauciet to pēc izvēles. Jums būs nepieciešams šāds imports:
importēt java.util. List;
importēt java.util. ArrayList;
importēt java.util. Date;
importēt javafx.geometry. Pos;
importēt javafx.scene.layout. HBox;
importēt javafx.application. Application;
importēt javafx.collections.transformation. FilteredList;
importēt javafx.scene.text. Font; importēt javafx.scene.control.*;
importēt javafx.collections. FXCollections;
importēt javafx.collections. ObservableList;
importēt javafx.geometry. Insets;
importēt javafx.scene. Group;
importēt javafx.scene. Scene;
importēt javafx.scene.control. Label;
importēt javafx.scene.control.cell. PropertyValueFactory;
importēt javafx.scene.layout. VBox;
importēt javafx.stage. Stage;
Es zinu, ka tas var šķist daudz, bet ticiet man, tie ir nepieciešami, lai mēs varētu izveidot mūsu lietojumprogrammu. Iet uz priekšu un paziņojiet savu klasi un pārliecinieties, ka tā paplašina lietojumprogrammu, jo tā ir nepieciešama projekta sastāvdaļa. Sākumā deklarējiet jaunu gadījuma mainīgo, kas ir jūsu objekta TableView, piemēram, privāta TableView tabula = new TableView ();
Deklarējiet arī galveno metodi, kuru izmantosim lietotnes palaišanai. Būtībā tam vajadzētu izskatīties kā augšējā attēlā.
Tagad mums ir jāizveido mūsu sākuma metode. Pārliecinieties, ka tas rada izņēmumu, jo mēs izsauksim metodi create () no mūsu bijušās klases. Izveidojiet jaunu notikumu ar tukšiem parametriem, lai mēs ar to varētu izsaukt izveidošanas metodi. Definējiet jaunu sarakstu un iestatiet to vienādu ar izveides () rezultātu. Tagad izveidojiet jaunu ObservableList, kas tiks izmantots, lai aizpildītu mūsu tabulu ar mūsu datiem. Definējiet to šādi:
ObservableList dati = FXCollections.observableArrayList ();
Tagad izveidojiet jaunu ainu ar:
Sižeta aina = jauna aina (jauna grupa ());
Iestatiet nosaukumu, platumu, augstumu un visu citu, kas jums nepieciešams, lai viss darbotos. Augšējā attēlā varat redzēt manas vērtības. Tagad mēs varam sākt veidot galdu. Lai iegūtu visu informāciju, kuru vēlaties parādīt, izveidojiet TableColumn, piemēram:
TableColumn eventCol = new TableColumn ("Notikuma nosaukums"); eventCol.setMinWidth (100); eventCol.setCellValueFactory (jauns PropertyValueFactory ("sName"));
Parametrs "sName" ir jāaizpilda ar jebkuru jūsu SSP piekļuves funkciju nosaukumu, lai tas varētu iegūt dotajiem objektiem nepieciešamās vērtības. Izveidojiet tik daudz kolonnu, cik nepieciešams, un pēc tam pievienojiet tās tabulai ar
FilteredList flEvent = jauns FilteredList (dati, p -> true);
table.setItems (flEvent);
table.getColumns (). addAll (eventCol, statCol, groupCol, datingCol, descCol, locationCol);
Ja vēlaties pievienot meklēšanas joslu tāpat kā es, pārbaudiet kodu, lai iegūtu informāciju par to, kā izveidot izvēles rūtiņu un teksta lauku, kas ļaus lietotājam filtrēt tabulu pēc noteiktām vērtībām. Ja esat izvēlējies to darīt, jums būs jāizveido arī hBox, lai tos saturētu, ar
HBox hBox = jauns HBox (choiceBox, textField);
hBox.setAlignment (Poz. CENTRS);
Tālāk esošajā metodē.addAll () jums būs jāpievieno arī hBox.
Pretējā gadījumā vienkārši izveidojiet jaunu vBox, lai turētu mūsu datus
gala VBox vbox = jauns VBox ();
vbox.getChildren (). addAll (etiķete, tabula);
((Grupas) aina. GetRoot ()). GetChildren (). AddAll (vbox);
stage.setScene (aina); stage.show ();
Tagad apkopojiet savu kodu un palaidiet to un pārbaudiet, vai tas darbojas. Izmantojiet NetBeans, lai atrastu visas kļūdas, kas ekrāna labajā pusē parādīsies kā sarkanas joslas. Turpiniet to darīt, līdz vairs nav kļūdu, un projekts darbojas.
Pēc kodēšanas pabeigšanas es ieteikšu izveidot sava koda Javadoc, lai cilvēki varētu redzēt, ko jūsu kods dara. Lai to izdarītu, zem pogas "Palaist" ekrāna augšdaļā vienkārši nospiediet "Ģenerēt Javadoc". Jūs varat atrast manas Javadoc kopiju, ielūkojoties zip failā pirmajā lapā un izvēloties failu index.html.
7. solis: mūsu burkas faila apkopošana un iesaiņošana

Kad esat pietiekami atkļūdojis savu un veiksmīgi to palaidis, beidzot varat to apkopot JAR failā, kuru pēc tam var publicēt, lai citi varētu palaist šo programmatūru, neizmantojot NetBeans vai Jsoup.
Pirms lietotnes apkopošanas pārliecinieties, ka viss ir izdarīts. Ja vēlaties pievienot dokumentāciju un izveidot JavaDoc, dariet to. Ja jums ir kādas System.out komandas, kas drukā uz jūsu konsoli, noņemiet tās. Būtībā pārliecinieties, vai jūsu lietotnei nav nevēlamu komandu vai funkciju un vai tajā ir viss nepieciešamais, lai to iepakotu.
Pēc tam ar peles labo pogu noklikšķiniet uz projekta nosaukuma NetBeans. Tam vajadzētu parādīties izvēlnē. Noklikšķiniet uz rekvizītiem (izvēlnes pašā apakšā), pēc tam noklikšķiniet uz "Iepakojums" jaunās uznirstošās izvēlnes kreisajā pusē. Tagad pārliecinieties, vai visas izvēles rūtiņas ir atzīmētas. Jūsu ekrānam vajadzētu izskatīties tāpat kā iepriekš.
Pēc tam vēlreiz ar peles labo pogu noklikšķiniet uz sava projekta NetBeans. Šajā brīdī nospiediet pogu "Tīrīt un veidot", un NetBeans sāks ņemt jūsu bibliotēkas un failus un apkopot tos darba JAR failā. Ja viss ir kārtībā, pēc dažiem mirkļiem konsolē vajadzētu redzēt ziņojumu, kurā teikts, ka JAR ir pabeidzis apkopošanu, un failu var palaist. Palaidiet šo lietotni un pārliecinieties, vai viss darbojas. Ja nē, atkļūdojiet un restartējiet procesu, līdz tiek novērstas kļūdas.
8. solis: Apsveicam
Apsveicam! Ja jūs pareizi izpildījāt visus norādījumus un visu labi iekodējāt, tad jums vajadzētu būt savai darba lietojumprogrammai. Lieliski ir tas, ka tagad, kad jūs vai kāds cits, kam ir piekļuve jūsu izklājlapai, rediģē datus, jūsu lietotne varēs mainīt jaunos datus un reaģēt uz tiem. Šeit ir ātrs video par to, kā izrādījās mans.
Ja jūs meklējat veidus, kā turpināt uzlabot un veidot, es iesaku pārbaudīt dažas JavaFX uzlabotās funkcijas, piemēram, FancyText vai FancyButton, kas jūsu lietojumprogrammai var pievienot dažas augstākas klases grafikas. Labu veiksmi un atstājiet komentāru, ja jums nepieciešama palīdzība vai pamanāt kļūdu manā kodā!
Ieteicams:
Kā izveidot mitruma un temperatūras reālā laika datu ierakstītāju, izmantojot Arduino UNO un SD karti - DHT11 datu reģistrētāja simulācija Proteus: 5 soļi

Kā izveidot mitruma un temperatūras reālā laika datu ierakstītāju, izmantojot Arduino UNO un SD karti | DHT11 datu reģistrētāja simulācija Proteus: Ievads: čau, tas ir Liono Maker, šeit ir YouTube saite. Mēs veidojam radošu projektu ar Arduino un strādājam pie iegultām sistēmām. Datu reģistrētājs: Datu reģistrētājs (arī datu reģistrētājs vai datu ierakstītājs) ir elektroniska ierīce, kas laika gaitā reģistrē datus
Android lietojumprogrammas izveide mazajam biznesam, izmantojot MIT APP un Google Fusion tabulu: 7 soļi

Android lietojumprogrammas izveide mazajam biznesam, izmantojot MIT APP un Google Fusion Table: Vai esat kādreiz vēlējies izveidot savu lietojumprogrammu, kas var būt pieejama Google Play veikalā !!! Ja jums ir bizness, šī apmācība mainīs jūsu dzīvi. Rūpīgi izlasot šo, jūs varēsit izveidot savu pieteikumu. Befo
IOT datu bezvadu temperatūras un mitruma sensora sūtīšana uz MySQL: 41 darbība

IOT datu bezvadu temperatūras un mitruma sensora nosūtīšana uz MySQL: iepazīstinām ar NCD liela attāluma IoT temperatūras un mitruma sensoru. Pateicoties 28 jūdžu diapazonam un bezvadu tīkla tīkla arhitektūrai, šis sensors pārraida mitruma (± 1,7%) un temperatūras (± 0,3 ° C) datus lietotāja noteiktos intervālos, guļot
EAL-Industri4.0-RFID datu paraugu ņemšanas datu bāze: 10 soļi (ar attēliem)

EAL-Industri4.0-RFID datu paraugu ņemšana līdz datubāzei: Dette projekt omhandler opsamling af v æ gtdata, registreering af identiteter vha. RFID, satraucoši dati un lv MySQL datu bāze. mezgls RED, samt fremvisning og behandling af de opsamlede data i et C# program i form af en Windows Form Application
Partijas lietojumprogrammas/faili un to darbība: 6 soļi

Partiju lietojumprogrammas/faili un to darbības princips: tas ir pamācāms dažām partiju lietojumprogrammām, kuras esmu izveidojis un kā tās darbojas! Vispirms šeit ir pakešu lietojumprogrammu/failu saraksts; 1. Ritināšanas teksta animācija 2. Matricas animācija 3. Mapju bloķētāja lietotne. 4. Partijas kalkulatora lietotne. 5. Internets