Bagaimana Melaksanakan Senibina MVC di Jawa?



Artikel mengenai MVC Architecture in Java ini akan membantu anda memahami apa sebenarnya corak reka bentuk MVC dan bagaimana ia memudahkan merancang aplikasi web.

Dalam bidang Pembangunan Web, Model-View-Controlleradalah antara yang paling banyak dibincangkan dalam dunia pengaturcaraan web hari ini. MVC Architecture pada mulanya termasuk dalam dua kerangka pembangunan web utama - Struts dan Ruby on Rails . Dalam artikel ini, mari kita terokai sedikit mengenai MVC Architecture di .

Topik yang akan dibahas dalam artikel ini adalah sebagai berikut:





Sebelum kita benar-benar gdan ke dalam teknikal MVC Architecture, terdapat konsep tertentu yang perlu anda ketahui.

  • Corak Reka Bentuk , dalam kejuruteraan perisian, adalah teknik untuk menyelesaikan masalah yang sering berlaku ketika merancang perisian.
  • Merangka Model, menentukan jenis seni bina yang anda gunakan untuk menyelesaikan masalah atau merancang model.
  • Terdapat dua jenis model reka bentuk : Model 1 Senibina , Senibina Model 2 (MVC).

Apa itu MVC Architecture di Java?

Reka bentuk model berdasarkan seni bina MVC mengikuti MVC dan mereka memisahkan logik aplikasi dari antara muka pengguna semasa merancang perisian. Seperti namanya corak MVC mempunyai tiga lapisan, iaitu:



  • Model - Merupakan lapisan perniagaan aplikasi
  • Pandangan - Mentakrifkan persembahan aplikasi
  • Pengawal - Menguruskan aliran aplikasi

MVC - Senibina MVC di Jawa - Edureka

apakah kerangka dalam selenium

Dalam konteks Pengaturcaraan Java,Model terdiri daripada sederhana Kelas Java , Paparan memaparkan data dan Pengawal terdiri daripada . Pemisahan ini mengakibatkan permintaan pengguna diproses seperti berikut:



  1. Penyemak imbas pada klien menghantar permintaan halaman ke pengawal yang ada di pelayan
  2. Pengawal melakukan tindakan memanggil model, dengan itu, mengambil data yang diperlukan sebagai tindak balas kepada permintaan tersebut
  3. Pengawal kemudian memberikan data yang diambil ke paparan
  4. Pandangan diberikan dan dihantar kembali ke klien untuk penyemak imbas untuk dipaparkan

Memisahkan aplikasi perisian menjadiketiga-tiga komponen yang berbeza ini adalah idea yang baik kerana beberapa sebab. Mari kita lihat apa itu.

Kelebihan Senibina MVC di Jawa

Senibina MVC menawarkan banyak kelebihan untuk pengaturcara ketika mengembangkan aplikasi, yang meliputi:

  • Pelbagai pembangun boleh bekerja dengan tiga lapisan (Model, View, dan Controller) secara serentak
  • Tawaran bertambah baik skalabiliti , yang melengkapkan kemampuan aplikasi untuk berkembang
  • Oleh kerana komponen mempunyai pergantungan yang rendah antara satu sama lain, komponen ini mudah dijaga
  • Model boleh digunakan semula oleh pelbagai paparan yang memberikan penggunaan semula kod
  • Penerapan MVC menjadikan aplikasi lebih ekspresif dan mudah difahami
  • Memperluas dan menguji aplikasi menjadi mudah

Sekarang anda tahu mengapa MVC adalah yang paling popular dalam dunia pengaturcaraan web. Tetapi, jika anda masih berusaha mendapatkan konsep MVC, jangan risau. Kami akan menyelami setiap lapisan ini dan mengetahui tujuannya dengan bantuan .

Pelaksanaan MVC menggunakan Java

Untuk melaksanakan aplikasi web berdasarkan corak reka bentuk MVC, kami akan membuat

  • Kelas Kursus , yang bertindak sebagai lapisan model
  • Kelas CourseView , yang menentukan lapisan persembahan ( lapisan pandangan )
  • Kelas CourseContoller , yang bertindak sebagai pengawal

Sekarang, mari kita teliti lapisan ini satu persatu.

Lapisan Model

Dalam corak reka bentuk MVC, the model adalah lapisan data yang menentukan logik perniagaan sistem dan juga mewakili keadaan aplikasi.Modelnya benda mengambil dan menyimpan keadaan model dalam pangkalan data. Melalui lapisan ini, kami menerapkan peraturan untuk data, yang akhirnya mewakili konsep yang dikendalikan oleh aplikasi kami. Sekarang, mari kita buat model menggunakan Kelas Kursus.

pakej MyPackage kelas awam Kursus {private String CourseName private String CourseId private String CourseKategori public String getId () {return CourseId} public void setId (String id) {this.CourseId = id} public String getName () {return CourseName} public void setName (String name) {this.CourseName = name} public String getCategory () {return CourseCategory} public void setCategory (kategori String) {this.CourseCategory = kategori}}

Kodnya mudah difahami dan jelas. Ini terdiri daripada fungsi untuk mendapatkan / menetapkan perincian kursus.

Lapisan Pandangan

Lapisan corak reka bentuk MVC ini mewakili output aplikasi atau antara muka pengguna. Ia memaparkan data yang diambil dari lapisan model oleh pengawal dan memberikan data kepada pengguna setiap kali diminta. Sayat menerima semua maklumat yang diperlukannya dari pengawal dan tidak perlu berinteraksi dengan lapisan perniagaan secara langsung.Mari buat pandangan menggunakan Kelas CourseView.

pakej MyPackage kelas awam CourseView {public void printCourseDetails (String CourseName, String CourseId, String CourseCategory) {System.out.println ('Detail Course:') System.out.println ('Name:' + CourseName) System.out.println ('ID Kursus:' + CourseId) System.out.println ('Category Course:' + CourseCategory)}}

Kod ini adalahhanya untuk mencetak nilai ke konsol. Selanjutnya kita mempunyai pengawal aplikasi web.

Lapisan Pengawal

Pengawal adalah seperti antara muka antara Model dan Pandangan. Ia menerima permintaan pengguna dari lapisan pandangan dan memprosesnya, termasuk pengesahan yang diperlukan. Permintaan kemudian dihantar ke model untuk pemprosesan data. Setelah diproses, data dihantar kembali ke pengawal dan kemudian dipaparkan pada paparan.Mari buat Kelas CourseContoller yang bertindak sebagai pengawal.

pakej MyPackage kelas awam CourseController {private Course model private CourseView view public CourseController (model Course, 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 (kategori String) {model.setCategory (kategori)} public String getCourseCategory () {return model.getCategory ()} public void updateView () {view.printCourseDetails (model.getName (), model.getId (), model.getCategory ())}}

Sekilas kod pada kod akan memberitahu kita bahawa kelas pengawal ini hanya bertanggungjawab untuk memanggil model untuk mendapatkan / menetapkan data dan mengemas kini pandangan berdasarkan itu. Sekarang marilihat bagaimana semua ini terikat bersama.

Kelas Java Utama

Mari kita panggil kelas ini 'MVCPatternDemo.java'. Lihat kod di bawah.

perbezaan php antara gema dan cetakan
pakej MyPackage kelas awam MVCPatternDemo {public static void main (String [] args) {// ambil rekod pelajar berdasarkan roll no dari pangkalan data Model kursus = retriveCourseFromDatabase () // Buat paparan: untuk menulis butiran kursus pada konsol Paparan CourseView = baru CourseView () Pengawal CourseController = pengawal CourseController baru (model, paparan) .updateView () // kemas kini pengawal data model.setCourseName ('Python') System.out.println ('nSetelah mengemas kini, Maklumat Kursus adalah seperti berikut') controller.updateView ()} statik persendirian Kursus retriveCourseFromDatabase () {Course course = new Course () course.setName ('Java') course.setId ('01 ') course.setCategory (' Programming ') return course}}

Kelas di atasmengambil data kursus dari menggunakan pengguna mana yang memasukkan set nilai. Ia kemudian memasukkan nilai-nilai tersebut ke dalam model Kursus. Kemudian, ia memulakan pandangan yang telah kita buat sebelumnya dalam artikel.Selanjutnya, ia juga memanggil Pengawal Kursus kelas dan mengikatnya dengan Kursus kelas dan Pandangan Kursus kelas. The kemas kiniView () kaedah yang merupakan bahagian pengawal kemudian mengemas kini butiran kursus di konsol. Lihat output di bawah.

Pengeluaran

Butiran Kursus: Nama: Java Kursus ID: 01 Kategori Kursus: Pengaturcaraan Setelah dikemas kini, Butiran Kursus adalah seperti berikut Butiran Kursus: Nama: Python ID Kursus: 01 Kategori Kursus: Pengaturcaraan

Senibina MVCmemberikan tahap modulariti sama sekali baru untuk kod anda yang menjadikannya jauh lebih mudah dibaca dan dikekalkan. Ini membawa kita ke akhir artikel ini.Semoga anda jelas dengan semua yang telah dikongsi dengan anda.

Pastikan anda berlatih sebanyak mungkin dan kembalikan pengalaman anda.

Lihat oleh Edureka, sebuah syarikat pembelajaran dalam talian yang dipercayai dengan rangkaian lebih daripada 250,000 pelajar berpuas hati yang tersebar di seluruh dunia. Kami di sini untuk membantu anda dalam setiap langkah dalam perjalanan anda, kami menyediakan kurikulum yang dirancang untuk pelajar dan profesional yang ingin menjadi Pembangun Java.

Ada soalan untuk kami? Sila sebutkan di bahagian komen ‘MVC Architecture in Java’ ini artikel dan kami akan menghubungi anda secepat mungkin.