Tuesday, April 18, 2023

Unapredite svoj razvoj Java aplikacija sa Spring radnim okvirom

Kada tek počnete da učite Java programiranje, obično kodirate manje programe kako biste se upoznali sa osnovnim konceptima i pravilima Java programskog jezika. Kada steknete malo više iskustva, počinjete da razvijate sopstvene projekte, ali shvatite da ima još mnogo toga što treba da naučite o Java programskom jeziku. Za razliku od drugih programskih jezika, Java je vrlo kompleksan programski jezik i koristi se za razvijanje velikih projekata, što može biti zbunjujuće i za najiskusnije programere. Java programski jezik nudi mnogo mogućnosti, ali kodiranje u ovom jeziku može zahtevati veliki broj linija koda i često dovodi do grešaka. Osim toga, proces testiranja i uključivanja drugih elemenata u projekat može biti vrlo spor i zahtevan. Ako niste upoznati sa radnim okvirima za Java programski jezik, može biti teško da se nosite sa svim ovim izazovima. Stoga, preporučuje se da čak i početnici u Java programiranju uče i koriste radne okvire koji olakšavaju razvoj projekata. Radni okviri za Java programski jezik; kao što su Spring, Hibernate i Apache Struts 1 nude mnoge funkcije koje olakšavaju razvoj veb aplikacija i mikroservisa, omogućavajući programerima da brzo razvijaju i skaliraju svoje projekte. Korišćenje radnih okvira takođe može pomoći u smanjenju količine koda koji je potrebno napisati i smanjiti broj grešaka u projektu, pre svega zbog bolje optimizacije i organizacije svih poslovnih i drugih procesa koji proističu iz vašeg projekta.


( Spring radni okvir, jedan od najpopularnijih Java radni okvira )

Pogledajmo koji se to najčešći frameworks – radni okviri koriste u Java projektima.

  • Spring – jedan od najpopularnijih Java radni okvira, koji se koristi za izgradnju veb aplikacija, mikroservisa i drugih aplikacija. Nudi mnoge korisne funkcionalnosti poput sigurnosni, obrada transakcija, kontrole pristupa i druge.
  • Hibernate – popularan radni okvir za rad sa bazama podataka, koji omogućava programerima da lako izvršavaju CRUD operacije, kao i upite i pretrage u bazama podataka.
  • Apache Struts 1 – je stariji radni okvir otvorenog koda za izgradnju veb aplikacija koji pruža odličnu podršku za MVC arhitekturu.
  • Apache Struts 2 – je noviji radni okvir otvorenog koda za izgradnju veb aplikacija koji pruža odličnu podršku za MVC arhitekturu ali i podršku za AJAX.
  • Play Framework – je moderni veb radni okvir koji se koristi za izgradnju brzih i skalabilnih veb aplikacija.
  • JSF – JavaServer Faces – je radni okvir za izgradnju veb aplikacija koji se oslanja na komponente, dok omogućava programerima da brzo i lako izgrađuju korisnički interfejse.
  • JavaFX – je radni okvir za izgradnju desktop aplikacija koji omogućava programerima da brzo i lako izgrade interaktivne aplikacije sa bogatim grafičkim interfejsom.
  • Apache Wicket – je radni okvir koji se koristi za izgradnju veb aplikacija i koji se oslanja na komponente i omogućava programerima da brzo i lako izgrade kompleksne aplikacije.
  • Dropwizard – je radni okvir koji se koristi za izgradnju mikroservisa.
  • Itd.
Postoji još i drugih radnih okvira za Java programski jezik koji se koriste u različitim aplikacijama i projektima, dok izbor radnog okvira isključivo zavisi od specifičnih zahteva projekta i preferencija programera. Imajte samo u vidu da vi možete da koristite više radni okvira u istom projektu, kad to ima smisla ili bolje rečeno kad su radni okviri kompatabilni kao npr. Spring Hibernate. Mi ćemo se u ovom tutorijalu baviti Spring radnim okvirom i mogućnostima koje on pruža.

Spring radni okvir

Pre nego što krenemo sa praktičnim delom tutorijala, važno je da se što bolje upoznamo sa Spring radnim okvirom. Možda se pitate zašto smo baš njega odabrali kao temu za ovaj tutorijal. Naravno, popularnost i široka primena u mnogim kompanijama koje koriste Java programski jezik nisu jedini razlozi. Spring radni okvir pruža sveobuhvatni model programiranja i konfiguracije za moderne poslovne aplikacije napisane u Java programskom jeziku. Ovaj radni okvir vam omogućava da povežete različite delove vašeg projekta na jednostavan način, tako da se vodi računa o svim neophodnim vezama.

( Spring je nastao kao rešenje za EJB - Enterprise JavaBeans izazove ) 

Pre pojave Spring radnog okvira, 2002 godine; EJB - Enterprise JavaBeans je bio jedan od najpopularnijih radnih okvira za razvoj poslovnih aplikacija u Java programskom jeziku. EJB je pružao standardizirani način razvoja i izvršavanja poslovnih komponenti koje se izvršavaju na serverskoj strani.
Međutim, EJB se suočio s nekoliko izazova, od velikog i složenog API-ja, uključujući kompleksnost i težak proces razvoja, tešku upotrebu i visok zahtev za hardverom za pokretanje aplikacija temeljenih na njemu. Upravo zbog ovih izazova, razvijen je Spring radni okvir kao alternativa EJB-uSpring radni okvir je bio fokusiran na pojednostavljenje razvoja aplikacija i olakšavanje upotrebe, a pružao je i nekoliko inovativnih značajni stvari koje su ga učinile jednim od najpopularnijih radnih okvira za razvoj aplikacija u programskom jeziku Java. Danas, 2023 godine; Spring verzija 6, sa Java SE 20 verzijom; omogućava izuzetnu arhitekturnu fleksibilnost, jednostavnije testiranje koda zahvaljujući depedency injection - tehnika ubrizgavanja zavisnosti, smanjivanje upravljačkog koda, praćenje promena i poboljšanje performansi.

Kako da kreiramo projekat koji uključuje Spring radni okvir?

Za naš tutorijal smo izabrali Linux operativni sistem, preciznije Ubuntu; što neće imati neki drugačiji uticaj ako je vaš izbor Windows operativni sistem ili MacOS. Za IDE – razvojno programersko okruženje smo izabrali IntelliJ Idea Community Edition. Ukoliko i vi hoćete da koristite UbuntuLinux operativni sistem preko virtualne mašine, ali se pitate kako se on instalira, pogledajte sledeći video.


( Linux - 1. How to install Ubuntu ? )

Ukoliko nemate instaliranu najnoviju besplatnu verziju IntelliJ Idea Community Edition-a, pogledajte video kako se on instalira na LinuxUbuntu distribuciji.


( Linux - 9. How to install IntelliJ Idea Community Edition ? )

Ukoliko koristite Windows operativni sistem, a nemate instaliran IntelliJ Idea Community Edition, pogledajte sledeći video.


( Windows - 8. How to install IntelliJ Idea Community Edition ? )

Ukoliko imate sve spremno i instalirano, kada pokrenete IntelliJ Idea Community Edition, razvojno programersko okruženje, kliknite na dugme New Project. Sa vaše leve strane pogledajte koje sve vrste aplikacija možete da kreirate. Međutim, među njima nema ni Spring Initializr niti Spring Assistent. Ukoliko gledate starije video tutorijale na YouTube kanalu, može sve izgledati poražavajuće. Ako se vratite na uvodni panel i pogledate opciju Plugins, i hoćete da instalirate Spring Assistent, videćete da ga više nema tu ni kao opcija za instaliranje. Šta vam onda preostaje. Pokrenite vaš pretraživač i preko Google, pronađite veb stranicu koja odgovara upitu Spring Assistent Plugin. Brzo ćete shvatiti da Spring Assistent od 2018 godine nije kompatabilan za upotrebu. Pa šta onda da radite? Otkucajte novu veb adresu u vašem pretraživaču. https://start.spring.io/ i pogledajte sami formu Spring Initializr-a na veb stranici.


( Spring Initializr veb stranica, rešenje za nedostatak plugina Spring Assistent )

Možda će vam biti malo čudno, ali je pre neverovatno. Sličnu formu bi ste ispunjavali u vašem IDE – razvojnom programskom okruženju. Ali nije ni ovo loše, jer radi i daje odličnu alternativu. Popunite formu na sledeći način:

Project – Maven

Language – Java

Spring Boot – 3.0.5 ili noviji da nije SNAPSHOT

Group – com.tutorial

Artificat – tutorial

Name – tutorial

Description – Hello World Project

Package name – com.tutorial.helloworld

Packaging – Jar

Dependencies – Spring Web

Kliknite na dugme GENERATE. Pokrenućete download tutorial.zip fajla. Raspakujte tutorial.zip i njegov početni direktorijum tutorial sa svim direktorijumima i fajlovima prebaci na direktorijum home. Preimenujte direktorijum tutorial na spring_tutorial. Zatim otvorite taj direktorijum kao projekat u  IntelliJ Idea Community Edition. Pogledajte, šta sve imate u projektu, i kliknite na TutorialApllication fajl. Zatim na dugme RUN. Kad se proces izvrši, otvorite vaš pretraživač i otkucajte localhost na portu 8080.

Ako je sve u redu, dobićete sledeći tekst.

Whitelabel Error Page

This application has no explicit mapping for /error, so you are seeing this as a fallback.

Tue Apr 18 03:23:33 CEST 2023

There was an unexpected error (type=Not Found, status=404).


( Kad pokrenete Spring projekat, treba da dobijete Whitelabel Error Page sa trenutnim datumom )

Vratite se u IDE – razvojno programersko okruženje, zatim u vašem projektu kreirajte novi fajl tipa klase u src/main/java/com.tutorial.helloworld i nazovite ga HelloWorldController. Prekucajte sledeći kôd u njega.

package com.tutorial.helloworld;

import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
@RestController
public class HelloWorldController {
   
@RequestMapping("/hello")
   
public String Hello() {
       
return "Hello World form Spring Boot!";
    }

   
@RequestMapping("/bye")
   
public String Bye() {
       
return "Bye World form Spring Boot!"
;
    }
}

Snimite vaš projekat, kliknite na TutorialApllication fajl i zatim kliknite na RUN. U vašem pretraživaču otkucajte sledeću veb adresu.

http://localhost:8080/hello

Rezultat će biti sledeći tekst:

Hello World from Spring Boot! - Manuel's No-Talk Programming Videos

Zatim promenite veb adresu u sledeću:

http://localhost:8080/bye

Rezultat će biti sledeći tekst:

Bye World from Spring Boot! - Manuel's No-Talk Programming Videos

Čestitamo, na vašoj prvoj aplikaciji koja koristi Spring radni okvir! Kako sve ovo izgleda, možete pogledati i u sledećem video-u!


( Spring - 1. How to Start with Spring Framework ? )








 

 

  

  

 

 


No comments:

Post a Comment