Rumah > Java > javaTutorial > teks badan

Bagaimana untuk Menghuraikan Parameter Berbilang Bahagian/Borang-Data dalam Servlets?

Barbara Streisand
Lepaskan: 2024-11-09 08:41:02
asal
554 orang telah melayarinya

How to Parse Multipart/Form-Data Parameters in Servlets?

Menghuraikan Parameter Berbilang Bahagian/Borang-Data dalam Servlet

Apabila menghuraikan permintaan masuk yang dikodkan dalam format berbilang bahagian/data borang, adalah penting untuk menangani batasan API Servlet sebelum versi 3.0. Secara lalai, Servlet API menganggap pengekodan aplikasi/x-www-form-urlencoded, menghasilkan nilai nol apabila menggunakan request.getParameter().

Penyelesaian untuk Servlet 3.0 dan Kemudian

Jika aplikasi anda menggunakan Servlet 3.0 atau lebih tinggi, penyelesaiannya adalah mudah. Gunakan HttpServletRequest#getPart() untuk mendapatkan semula parameter data borang berbilang bahagian mengikut nama:

Part part = request.getPart("paramName");
Salin selepas log masuk

Penyelesaian untuk Versi Servlet Sebelum 3.0

Untuk persekitaran pra-Servlet 3.0, pendekatan yang disyorkan ialah menggunakan perpustakaan Apache Commons FileUpload. Pustaka ini menyediakan keupayaan penghuraian yang diperlukan untuk permintaan berbilang bahagian/data bentuk, mengendalikan kerumitan pengesanan sempadan dan pengekstrakan data:

ServletFileUpload fileUpload = new ServletFileUpload();
FileItemIterator fileItemIterator = fileUpload.getItemIterator(request);
while (fileItemIterator.hasNext()) {
    FileItem fileItem = fileItemIterator.next();
    if (fileItem.isFormField()) {
        String paramName = fileItem.getFieldName();
        String paramValue = fileItem.getString();
    }
}
Salin selepas log masuk

Atas ialah kandungan terperinci Bagaimana untuk Menghuraikan Parameter Berbilang Bahagian/Borang-Data dalam Servlets?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
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
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan