Rumah  >  Artikel  >  Java  >  Perbincangan mendalam tentang prinsip dan amalan rangka kerja Struts

Perbincangan mendalam tentang prinsip dan amalan rangka kerja Struts

WBOY
WBOYasal
2024-02-18 18:10:24656semak imbas

Perbincangan mendalam tentang prinsip dan amalan rangka kerja Struts

Analisis prinsip dan penerokaan praktikal rangka kerja Struts

Sebagai rangka kerja MVC yang biasa digunakan dalam pembangunan Web Java, rangka kerja Struts mempunyai corak reka bentuk dan skalabiliti yang baik, dan digunakan secara meluas dalam pembangunan aplikasi peringkat perusahaan. Artikel ini akan menganalisis prinsip rangka kerja Struts dan menerokanya dengan contoh kod sebenar untuk membantu pembaca memahami dan menggunakan rangka kerja itu dengan lebih baik.

1. Analisis prinsip rangka kerja Struts

1. Seni bina MVC

Rangka kerja Struts adalah berdasarkan seni bina MVC (Model-View-Controller) dan membahagikan aplikasi kepada tiga jenis: model (Model), view (Lihat) dan pengawal (Pengawal) bahagian untuk mencapai pemisahan data, pembentangan dan logik perniagaan. Antaranya:

  • Model: bertanggungjawab memproses pengkapsulan data dan pemprosesan logik perniagaan, biasanya objek JavaBean atau operasi pangkalan data.
  • Lihat: Bertanggungjawab untuk memaparkan data kepada pengguna, biasanya halaman JSP atau halaman HTML.
  • Pengawal: Bertanggungjawab untuk menerima permintaan pengguna dan memanggil logik perniagaan yang sepadan mengikut permintaan, dan kemudian mengembalikan hasil pemprosesan kepada Paparan.

2. Komponen teras rangka kerja Struts

Komponen teras rangka kerja Struts termasuk Action, ActionForm, ActionMapping, ActionServlet, dll. Mereka bekerjasama untuk melaksanakan pemprosesan permintaan dan lonjakan halaman aplikasi Web.

  • Action: Komponen teras yang mengendalikan permintaan pengguna, bertanggungjawab untuk menerima permintaan HTTP, memanggil logik perniagaan dan mengembalikan hasil.
  • ActionForm: Kelas enkapsulasi data bentuk, bertanggungjawab untuk merangkum data borang yang diserahkan oleh pengguna ke dalam objek JavaBean.
  • ActionMapping: Hubungan pemetaan antara Tindakan dan URL permintaan, yang mentakrifkan objek Tindakan yang sepadan dengan laluan permintaan yang berbeza.
  • ActionServlet: Bekas Servlet memuatkan pusat kawalan rangka kerja Struts, memulakan rangka kerja Struts dan mengedarkan permintaan kepada Tindakan yang sepadan untuk pemprosesan.

2. Penerokaan praktikal rangka kerja Struts

Untuk lebih memahami aplikasi praktikal rangka kerja Struts, kami mengambil halaman log masuk mudah sebagai contoh untuk menunjukkan cara memproses log masuk pengguna melalui rangka kerja Struts. Berikut adalah contoh kod khusus:

1 Tulis halaman log masuk (login.jsp)

<form action="login.do" method="post">
    <input type="text" name="username" placeholder="用户名">
    <input type="password" name="password" placeholder="密码">
    <input type="submit" value="登录">
</form>

2 Tulis kelas Tindakan (LoginAction)

public class LoginAction extends Action {
    public ActionForward execute(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) throws Exception {
        LoginForm loginForm = (LoginForm) form;
        String username = loginForm.getUsername();
        String password = loginForm.getPassword();

        if("admin".equals(username) && "123456".equals(password)) {
            return mapping.findForward("success");
        } else {
            return mapping.findForward("error");
        }
    }
}

3. Tulis kelas Borang (LoginForm)

public class LoginForm extends ActionForm {
    private String username;
    private String password;

    // getter和setter方法省略
}
fail konfigurasi Struts (struts-config.xml)

<action-mappings>
    <action path="/login" type="LoginAction" name="LoginForm" input="/login.jsp" scope="request">
        <forward name="success" path="/success.jsp"/>
        <forward name="error" path="/error.jsp"/>
    </action>
</action-mappings>

Melalui langkah di atas, kami telah melaksanakan fungsi log masuk pengguna yang mudah Apabila pengguna memproses logik log masuk dalam kelas

, dan melompat ke halaman berbeza berdasarkan hasil pengesahan. daripada nama pengguna dan kata laluan. login.jsp页面输入用户名和密码后点击登录按钮,将请求发送到/login.do,由LoginAction

Kesimpulan

Melalui analisis dan penerokaan praktikal terhadap prinsip rangka kerja Struts, artikel ini berharap pembaca dapat memahami dengan lebih mendalam tentang prinsip kerja dan senario aplikasi rangka kerja tersebut. Dalam pembangunan projek sebenar, penggunaan munasabah rangka kerja Struts boleh meningkatkan kecekapan pembangunan dan mengurangkan kos penyelenggaraan Ia adalah salah satu alat yang amat diperlukan dan penting dalam pembangunan Web Java.

Atas ialah kandungan terperinci Perbincangan mendalam tentang prinsip dan amalan rangka kerja Struts. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn