Hogyan lehet megvalósítani az MVC architektúrát a Java-ban?



Ez a cikk a Java-ban található MVC architektúráról segít megérteni, hogy mi is pontosan az MVC tervezési mintája, és hogyan könnyíti meg a webalkalmazások tervezését.

A Webfejlesztés mezőben Model-View-Controlleraz egyik legtöbbet beszélt a webes programozási világban. Az MVC Architecture kezdetben bekerült a két fő webfejlesztési keretbe - a Struts és a Ruby on Rails . Ebben a cikkben fedezzünk fel egy kicsit az MVC architektúrájáról .

A cikk a következő témákkal foglalkozik:





Mielőtt valóban gés az MVC Architecture technikáiba, vannak bizonyos fogalmak, amelyeket tudnia kell.

  • Tervezési minta A szoftvertervezés egy olyan technika, amellyel megoldható a szoftvertervezés során gyakran előforduló probléma.
  • Designing Model, meghatározza, hogy milyen típusú architektúrát használ a probléma megoldására vagy a modell megtervezésére.
  • Van két típusú tervezési modellek : 1. modell felépítése , 2. modell (MVC) architektúrája.

Mi az MVC architektúra a Java-ban?

Az MVC architektúrán alapuló modelltervezetek követik az MVC-t és a szoftver tervezésénél elválasztják az alkalmazás logikáját a felhasználói felülettől. Ahogy a neve is mutatja, az MVC mintának három rétege van:



  • Modell - Az alkalmazás üzleti rétegét képviseli
  • Kilátás - Meghatározza az alkalmazás bemutatását
  • Vezérlő - Kezeli az alkalmazás folyamatát

MVC - MVC építészet Java-ban - Edureka

Java programozási környezetbena modell egyszerűből áll Java osztályok , a Nézet megjeleníti az adatokat, amelyekből a Vezérlő áll . Ez az elválasztás azt eredményezi, hogy a felhasználói kéréseket a következőképpen dolgozzák fel:



  1. Az ügyfél böngészője egy oldal iránti kérelmet küld a kiszolgálón lévő vezérlőnek
  2. A vezérlő végrehajtja a modell meghívását, ezáltal lekérve a kérésre válaszul szükséges adatokat
  3. Ezután a vezérlő átadja a visszakeresett adatokat a nézetnek
  4. A nézet megjelenik és visszaküldik az ügyfélnek a böngésző megjelenítésére

Szoftveralkalmazás szétválasztásaez a három különálló elem számos okból jó ötlet. Vessünk egy pillantást arra, hogy mik ezek.

Az MVC Architecture előnyei a Java-ban

Az MVC architektúra számos előnyt kínál egy programozó számára az alkalmazások fejlesztésekor, amelyek a következők:

  • Több fejlesztő egyszerre dolgozhat a három réteggel (Model, View és Controller)
  • Az ajánlatok javultak méretezhetőség , amely kiegészíti az alkalmazás növekedési képességét
  • Mivel az alkatrészek kicsien függnek egymástól, könnyen karbantarthatók
  • A modellt több nézet is felhasználhatja, amely biztosítja a kód újrafelhasználhatóságát
  • Az MVC elfogadása kifejezőbbé és könnyebben érthetővé teszi az alkalmazást
  • Az alkalmazás kiterjesztése és tesztelése egyszerűvé válik

Most már tudja, miért az MVC a legnépszerűbb a webes programozási világban. De, ha még mindig küzd az MVC koncepciójának körüljárásával, ne aggódjon. Mélyre fogunk ásni ezeket a rétegeket, és egy. Segítségével megismerjük céljukat .

MVC megvalósítása Java használatával

Az MVC tervezési mintáján alapuló webalkalmazás megvalósításához létrehozunk

  • Tanfolyam osztály , amely a modellréteg
  • CourseView osztály , amely meghatározza a bemutató réteget ( nézeti réteg )
  • CourseColloller osztály , amely a vezérlő

Most fedezzük fel ezeket a rétegeket egyenként.

A modellréteg

Az MVC tervezési mintájában az modell az az adatréteg, amely meghatározza a rendszer üzleti logikáját, és az alkalmazás állapotát is képviseli.A modell tárgyakat töltse le és tárolja a modell állapotát egy adatbázisban. Ezen a rétegen keresztül szabályokat alkalmazunk az adatokra, amelyek végül az alkalmazásunk által kezelt fogalmakat képviselik. Most hozzunk létre egy modellt Tanfolyam osztály.

csomag MyPackage public class Course {private String CourseName private String CourseId private String CourseCategory public String getId () {return CourseId} public void setId (String id) {this.CourseId = id} public String getName () {return CourseName} public void setName (Karaktersorozat neve) {this.CourseName = név} public String getCategory () {return CourseCategory} public void setCategory (String category) {this.CourseCategory = category}}

A kód könnyen érthető és magától értetődő. A tanfolyam részleteinek megszerzésére / beállítására szolgáló funkciókból áll.

A Nézet réteg

Az MVC tervezési minta ez a rétege az alkalmazás vagy a felhasználói felület kimenetét reprezentálja. Megjeleníti a vezérlő által a modellrétegből beolvasott adatokat, és amikor csak kérik, bemutatja az adatokat a felhasználónak. ént minden szükséges információt megkap a vezérlőtől, és nincs szüksége arra, hogy közvetlenül kapcsolatba lépjen az üzleti réteggel.Hozzunk létre nézetet a segítségével CourseView osztály.

csomag MyPackage public class CourseView {public void printCourseDetails (String CourseName, String CourseId, String CourseCategory) {System.out.println ('Course Details:') System.out.println ('Name:' + CourseName) System.out.println ('Tanfolyamazonosító:' + CourseId) System.out.println ('Tanfolyamkategória:' + Tanfolyamkategória)}}

Ez a kódegyszerűen kinyomtatni az értékeket a konzolra. Következik a webalkalmazás vezérlője.

A vezérlő réteg

A vezérlő olyan, mint egy interfész a Model és a View között. Fogadja a felhasználói kéréseket a nézettől és feldolgozza azokat, beleértve a szükséges ellenőrzéseket is. A kéréseket ezután elküldik az adatfeldolgozás modelljéhez. Feldolgozásuk után az adatokat ismét visszaküldik a vezérlőnek, majd megjelenítik a nézetben.Alkossunk CourseColloller osztály amely kontrollerként működik.

csomag MyPackage public class CourseController {private Course model private CourseView view public CourseController (Course model, CourseView view) {this.model = model this.view = view} public void setCourseName (String name) {model.setName (name)} public String getCourseName () {return model.getName ()} public void setCourseId (String id) {model.setId (id)} public String getCourseId () {return model.getId ()} public void setCourseCategory (String category) {model.setCategory (kategória)} public String getCourseCategory () {return model.getCategory ()} public void updateView () {view.printCourseDetails (model.getName (), model.getId (), model.getCategory ())}}

Rövid pillantás a kódra azt mondja nekünk, hogy ez a vezérlő osztály felelős azért, hogy felhívja a modellt az adatok megszerzésére / beállítására, és ez alapján frissítse a nézetet. Most menjünknézd meg, hogyan kötődnek ezek mind.

Fő Java osztály

Nevezzük ezt az osztályt „MVCPatternDemo.java” -nak. Nézze meg az alábbi kódot.

MyPackage public class MVCPatternDemo {public static void main (String [] args) {// tanulórekord beolvasása a tekercsszáma alapján az adatbázisból Course model = retriveCourseFromDatabase () // Nézet létrehozása: tanfolyam részleteinek írása konzol CourseView nézetre = új CourseView () CourseController vezérlő = új CourseController (modell, nézet) controller.updateView () // modelladat-vezérlő frissítése.setCourseName ('Python') System.out.println ('nFrissítés után a tanfolyam részletei a következők') controller.updateView ()} private static Course retriveCourseFromDatabase () {Course course = new Course () course.setName ('Java') course.setId ('01 ') course.setCategory (' Programming 'return course)}}

A fenti osztálylekéri a tanfolyam adatait a melyik felhasználó adja meg az értékkészletet. Ezután a Course modellbe tolja ezeket az értékeket. Ezután inicializálja a cikkben korábban létrehozott nézetet.Továbbá a CourseController osztály és hozzáköti a Tanfolyam osztály és a CourseView osztály. Az updateView () A vezérlő részét képező módszer ezután frissíti a tanfolyam részleteit a konzolon. Nézze meg az alábbi kimenetet.

Kimenet

módok szingleton osztály létrehozására Java-ban
Tanfolyam részletei: Név: Java Tanfolyam azonosító: 01 Tanfolyam kategória: Programozás Frissítés után a tanfolyam részletei a következők: Tanfolyam részletei: Név: Python Tanfolyam azonosítója: 01 Tanfolyam kategóriája: Programozás

Az MVC Architectureegy teljesen új szintű modularitást biztosít a kódod számára, ami sokkal olvashatóbbá és fenntarthatóbbá teszi. Ezzel eljutottunk a cikk végéhez.Remélem, tisztában van mindazzal, amit megosztott veled.

Győződjön meg arról, hogy a lehető legtöbbet gyakorolja, és állítsa vissza a tapasztalatait.

Nézze meg a az Edureka, egy megbízható online tanulási vállalat, amelynek több mint 250 000 elégedett tanulóval rendelkező hálózata elterjedt az egész világon. Azért vagyunk itt, hogy segítséget nyújthassunk utazásának minden lépésében, és kitalálunk egy tananyagot, amelyet olyan hallgatók és szakemberek számára tervezünk, akik Java fejlesztők szeretnének lenni.

Van egy kérdésünk? Kérjük, említse meg az „MVC Architecture in Java” megjegyzés szakaszában cikket, és a lehető leghamarabb kapcsolatba lépünk Önnel.