Com implementar l'arquitectura MVC a Java?



Aquest article sobre l'arquitectura MVC a Java us ajudarà a comprendre què és exactament el patró de disseny MVC i com facilita el disseny d'aplicacions web.

Al camp de desenvolupament web, Model-View-Controllerés un dels més comentats al món de la programació web actual. MVC Architecture es va incloure inicialment en els dos principals marcs de desenvolupament web: Struts i Ruby on Rails . En aquest article, explorem una mica sobre MVC Architecture a .

Els temes que es tractaran en aquest article són els següents:





Abans realment gI en els aspectes tècnics de MVC Architecture, hi ha alguns conceptes que heu de conèixer.

  • Patró de disseny , en enginyeria de programari, és una tècnica per resoldre un problema que es produeix habitualment en dissenyar programari.
  • Disseny de models, especifica quin tipus d’arquitectura utilitzeu per resoldre el problema o dissenyar el model.
  • Hi ha dos tipus de models de disseny : Model 1 Arquitectura , Arquitectura del model 2 (MVC).

Què és MVC Architecture a Java?

Els dissenys de models basats en l'arquitectura MVC segueixen el MVC i separen la lògica de l'aplicació de la interfície d'usuari en dissenyar programari. Com el seu nom indica, el patró MVC té tres capes, que són:



  • Model - Representa la capa de negoci de l'aplicació
  • Veure - Defineix la presentació de l'aplicació
  • Controlador - Gestiona el flux de l'aplicació

MVC - Arquitectura MVC a Java - Edureka

analitzeu el fitxer XML a Java

En el context de programació Java,el model consisteix en senzill Classes de Java , la vista mostra les dades i el controlador està format per . Aquesta separació fa que les sol·licituds dels usuaris es processin de la manera següent:



  1. El navegador del client envia una sol·licitud de pàgina al controlador present al servidor
  2. El responsable del tractament realitza l’acció d’invocar el model, recuperant així les dades que necessita en resposta a la sol·licitud
  3. A continuació, el controlador proporciona les dades recuperades a la vista
  4. La visualització es renderitza i s’envia de nou al client perquè es mostri el navegador

Separació d 'una aplicació de programari enaquests tres components diferents és una bona idea per diversos motius. Vegem què són.

Avantatges de l'arquitectura MVC a Java

L'arquitectura MVC ofereix molts avantatges per a un programador quan desenvolupa aplicacions, que inclouen:

  • Diversos desenvolupadors poden treballar simultàniament amb les tres capes (Model, Vista i Controlador)
  • S'han millorat les ofertes escalabilitat , que complementa la capacitat de creixement de l'aplicació
  • Com que els components tenen una dependència baixa els uns dels altres, són fàcils de mantenir
  • Un model es pot reutilitzar mitjançant diverses vistes que proporciona la reutilització del codi
  • L’adopció de MVC fa que una aplicació sigui més expressiva i fàcil d’entendre
  • Ampliar i provar l'aplicació es fa fàcil

Ara ja sabeu per què el MVC és el més popular al món de la programació web. Però, si encara teniu problemes per entendre el concepte de MVC, no us preocupeu. Aprofundirem en cadascuna d’aquestes capes i aprendrem el seu propòsit amb l’ajut d’un .

Implementació de MVC mitjançant Java

Per implementar una aplicació web basada en el patró de disseny de MVC, crearem

  • Classe del curs , que actua com a capa de model
  • Curs CourseView , que defineix la capa de presentació ( veure la capa )
  • Classe CourseContoller , que actua com a controlador

Ara, explorem aquestes capes una per una.

La capa de models

Al patró de disseny MVC, el fitxer model és la capa de dades que defineix la lògica empresarial del sistema i també representa l'estat de l'aplicació.El model objectes recuperar i emmagatzemar l'estat del model en una base de dades. Mitjançant aquesta capa, apliquem regles a les dades, que finalment representen els conceptes que gestiona la nostra aplicació. Ara, creem un model amb Classe del curs.

package 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 (Nom de la cadena) {this.CourseName = name} public String getCategory () {return CourseCategory} public void setCategory (categoria de la cadena) {this.CourseCategory = category}}

El codi és fàcil d’entendre i s’explica per si mateix. Consisteix en funcions per obtenir / establir detalls del curs.

rols i responsabilitats d'administrador de Linux

La capa de visualització

Aquesta capa del patró de disseny MVC representa la sortida de l'aplicació o de la interfície d'usuari. Mostra les dades obtingudes de la capa del model pel controlador i presenta les dades a l'usuari sempre que se li sol·liciti. JoT rep tota la informació que necessita del controlador i no necessita interactuar directament amb la capa empresarial.Creem una vista amb Curs CourseView.

package MyPackage public class CourseView {public void printCourseDetails (String CourseName, String CourseId, String CourseCategory) {System.out.println ('Detalls del curs:') System.out.println ('Nom:' + Nom del curs) System.out.println ('ID del curs:' + CourseId) System.out.println ('Categoria del curs:' + CourseCategory)}}

Aquest codi éssimplement per imprimir els valors a la consola. A continuació, tenim el controlador de l'aplicació web.

La capa de controlador

El controlador és com una interfície entre Model i View. Rep les sol·licituds de l'usuari de la capa de visualització i les processa, incloses les validacions necessàries. Les sol·licituds s’envien al model per al processament de dades. Un cop processades, les dades es tornen a enviar al controlador i després es mostren a la vista.Anem a crear Classe CourseContoller que actua com a controlador.

package MyPackage public class CourseController {private Course model private CourseView view public CourseController (Model del curs, vista CourseView) {this.model = model this.view = view} public void setCourseName (nom de la cadena) {model.setName (nom)} cadena pública getCourseName () {return model.getName ()} public void setCourseId (String id) {model.setId (id)} public String getCourseId () {return model.getId ()} public void setCourseCategory (categoria de cadenes) {model.setCategory (category)} public String getCourseCategory () {return model.getCategory ()} public void updateView () {view.printCourseDetails (model.getName (), model.getId (), model.getCategory ())}}

Un cop d’ull breu al codi ens indicarà que aquesta classe de controladors és l’única responsable de trucar al model per obtenir / configurar les dades i actualitzar la vista en funció d’això. Ara anemfes una ullada a com estan lligats tots ells.

Classe principal de Java

Anomenem aquesta classe 'MVCPatternDemo.java'. Consulteu el codi següent.

package MyPackage public class MVCPatternDemo {public static void main (String [] args) {// obtenir el registre de l'estudiant basat en el seu rotlle no de la base de dades Model del curs = retriveCourseFromDatabase () // Crear una vista: per escriure els detalls del curs a la consola Vista de vista de curs = new CourseView () CourseController controller = new CourseController (model, vista) controller.updateView () // actualitza les dades del model controller.setCourseName ('Python') System.out.println ('nDesprés de l'actualització, els detalls del curs són els següents') controller.updateView ()} Private static Course retriveCourseFromDatabase () {Course course = new Course () course.setName ('Java') course.setId ('01 ') course.setCategory (' Programació ') tornar curs}}

La classe anteriorobté les dades del curs del fitxer utilitzant quin usuari introdueix el conjunt de valors. A continuació, empeny aquests valors al model del curs. A continuació, inicialitza la visualització que havíem creat anteriorment a l'article.A més, també invoca el CourseController class i la lliga a la Curs classe i el CourseView classe. El updateView () que forma part del controlador actualitza els detalls del curs a la consola. Consulteu la sortida següent.

Sortida

Detalls del curs: Nom: Identificador del curs Java: 01 Categoria del curs: Programació Després de l’actualització, els detalls del curs són els següents Detalls del curs: Nom: Identificador del curs Python: 01 Categoria del curs: Programació

L’arquitectura MVCproporciona un nou nivell de modularitat al vostre codi que el fa molt més llegible i mantenible. Això ens porta al final d’aquest article.Espero que tingueu clar tot el que us ha estat compartit.

Assegureu-vos de practicar el màxim possible i de recuperar la vostra experiència.

Consulteu el per Edureka, una empresa d'aprenentatge en línia de confiança amb una xarxa de més de 250.000 estudiants satisfets repartits per tot el món. Estem aquí per ajudar-vos en tots els passos del vostre viatge, oferim un pla d’estudis dissenyat per a estudiants i professionals que vulguin ser desenvolupador de Java.

Tens alguna pregunta? Si us plau, mencioneu-lo a la secció de comentaris d'aquesta 'Arquitectura MVC a Java' article i ens posarem en contacte amb vostè el més aviat possible.