Lapisan aplikasi
1. [Disyorkan] Secara lalai, lapisan atas dalam rajah bergantung pada lapisan bawah, dan hubungan anak panah menunjukkan bahawa ia boleh bergantung secara langsung Sebagai contoh: lapisan antara muka terbuka boleh bergantung pada lapisan
, atau ia boleh bergantung secara langsung pada lapisan Perkhidmatan, dan seterusnya:
Lapisan antara muka terbuka: Antara muka Perkhidmatan boleh dikapsulkan secara terus dan didedahkan ke antara muka RPC melalui lapisan kawalan get laluan; , dsb.
- Lapisan paparan terminal: Templat setiap terminal memaparkan dan melaksanakan lapisan paparan. Pada masa ini, yang utama ialah rendering halaju, rendering JS, rendering JSP, lapisan paparan mudah alih, dsb.
- Lapisan perkhidmatan: lapisan perkhidmatan logik perniagaan yang agak khusus.
- Lapisan pengurus: lapisan pemprosesan perniagaan umum, yang mempunyai ciri-ciri berikut:
- 1) Lapisan yang merangkum platform pihak ketiga, prapemprosesan hasil pulangan dan menukar maklumat pengecualian
2) Keupayaan umum Perkhidmatan lapisan tenggelam, seperti penyelesaian caching dan pemprosesan am middleware;
3) Berinteraksi dengan lapisan DAO untuk merangkum keupayaan perniagaan am DAO.
Lapisan DAO: Lapisan akses data, yang berinteraksi dengan asas MySQL, Oracle dan Hbase untuk data.
Antara muka luaran atau platform pihak ketiga: termasuk antara muka terbuka RPC daripada jabatan lain, platform asas dan antara muka HTTP daripada syarikat lain.
2. [Rujukan] (Protokol Pengendalian Pengecualian Hierarki) Dalam lapisan DAO, terdapat banyak jenis pengecualian yang dijana, yang tidak boleh ditangkap dengan pengecualian terperinci Gunakan kaedah tangkapan(Exception e) dan buang DAOException(e ). Tidak perlu mencetak log, kerana log mesti ditangkap dan ditulis ke fail log di lapisan Pengurus/Perkhidmatan Jika pelayan yang sama mencetak log semula, ia akan membazirkan prestasi dan penyimpanan. Apabila pengecualian berlaku dalam lapisan Perkhidmatan, maklumat log mesti direkodkan ke cakera, dan maklumat parameter mesti disertakan sebanyak mungkin, yang bersamaan dengan melindungi tempat kejadian jenayah. Jika lapisan Pengurus dan Perkhidmatan digunakan pada mesin yang sama, kaedah pengelogan adalah konsisten dengan pemprosesan lapisan DAO Jika ia digunakan secara berasingan, kaedah pengelogan adalah konsisten dengan Perkhidmatan. Lapisan Web tidak boleh terus melontarkan pengecualian ke atas
Oleh kerana ia sudah berada di peringkat teratas, tiada cara untuk terus mengendalikan pengecualian Jika anda menyedari bahawa pengecualian ini akan menyebabkan halaman gagal dipaparkan secara normal, maka. anda harus melompat terus ke halaman ralat mesra Cuba tambah mesej ralat mesra. Lapisan antara muka terbuka harus mengembalikan pengecualian ke dalam kod ralat dan mesej ralat. 3. [Rujukan] Spesifikasi model domain hierarki:
DO (Objek Data): sepadan dengan struktur jadual pangkalan data satu-satu, dan menghantar objek sumber data ke atas melalui lapisan DAO.
DTO (Objek Pemindahan Data): Objek pemindahan data, objek yang dipindahkan keluar oleh Perkhidmatan dan Pengurus.
BO (Objek Perniagaan): Objek perniagaan. Objek yang merangkum logik perniagaan yang boleh dikeluarkan oleh lapisan Perkhidmatan.
QUERY: Objek pertanyaan data, setiap lapisan menerima permintaan pertanyaan dari lapisan atas. Nota: Untuk enkapsulasi pertanyaan dengan lebih daripada 2 parameter, adalah dilarang untuk menggunakan kelas Peta untuk penghantaran.
- VO (View Object): Paparkan objek lapisan, biasanya objek yang dihantar oleh Web ke lapisan enjin pemaparan templat.