Mã htmljava



     CodeJava
          Mã hóa niềm đam mê của bạn

      
  • Trang chủ >
  • Java EE >
  • servlet

Tìm hiểu Java Servlet.

  • Servlet dành cho người mới bắt đầu (XML)

  • Servlet cho người mới bắt đầu (chú thích)

  • Tham chiếu chú thích servlet

  • Chú thích @WebServlet

  • Chú thích @WebFilter

  • Chú thích @WebListener

  • Chú thích @WebInitParam

  • Chú thích @HandlesTypes

  • Chú thích @MultipartConfig

  • Tải tệp lên bằng Servlet 3. 0

  • Tải tệp lên bằng Apache Commons

  • Ví dụ tải lên nhiều tệp

  • Tải xuống tệp với Servlet

  • Đọc dữ liệu biểu mẫu trong Servlet

  • Chuyển tiếp yêu cầu từ servlet

  • Chuyển hướng từ servlet

  • Cách tạo bộ lọc Java Servlet

  • Cách sử dụng Cookies trong Servlet

  • Cách sử dụng Phiên trong Java

  • Xử lý lỗi trên web. xml

  • Cách triển khai bộ lọc xác thực



Cách xử lý dữ liệu form HTML với Java Servlet

Chi tiết Viết bởi  Nam Hà MinhCập nhật lần cuối vào ngày 11 tháng 3 năm 2020. In  Email



Trong hướng dẫn Java servlet này, tôi sẽ hướng dẫn bạn cách đọc giá trị của các trường nhập phổ biến từ biểu mẫu HTML ở phía máy chủ với Java Servlet. Bạn biết đấy, xử lý dữ liệu biểu mẫu được biểu thị trong trang HTML là một nhiệm vụ rất phổ biến trong phát triển web. Một tình huống điển hình là người dùng điền vào các trường của biểu mẫu và gửi nó. Máy chủ sẽ xử lý yêu cầu dựa trên dữ liệu đã gửi và gửi phản hồi lại cho máy khách. Hình ảnh sau đây mô tả quy trình công việc đó với Java servlet ở phía máy chủ.
Mã htmljava
Để tạo biểu mẫu trong HTML, chúng ta cần sử dụng các thẻ sau.
    • . để tạo một biểu mẫu để thêm các trường vào phần thân của nó.
    • ,
      Password:
      Biểu mẫu này sẽ trông như thế này trong trình duyệt.
      Mã htmljava
      Về phía máy chủ, chúng ta cần tạo một servlet Java được ánh xạ tới URL. loginServlet, như được chỉ định trong thuộc tính hành động của biểu mẫu. Sau đây là mã của servlet.
      @WebServlet("/loginServlet")
      public class LoginServlet extends HttpServlet {
      
      	protected void doPost(HttpServletRequest request,
      			HttpServletResponse response) throws ServletException, IOException {
      
      		// code to process the form...
      
      	}
      
      }



      Lưu ý rằng URL của servlet được chỉ định bởi chú thích @WebServlet trước lớp servlet. Khi người dùng gửi biểu mẫu đăng nhập ở trên, phương thức doPost() của servlet sẽ được gọi bởi bộ chứa servlet. Thông thường, chúng ta sẽ thực hiện các tác vụ sau bên trong phương thức doPost() .
        • Đọc giá trị của các trường được đăng từ biểu mẫu thông qua đối tượng yêu cầu (triển khai javax. đầy tớ. http. HttpServletRequest giao diện).
        • Làm vài chế đi e. g. kết nối với cơ sở dữ liệu để xác thực tên người dùng và mật khẩu
        • Trả lại phản hồi cho người dùng thông qua đối tượng respone (triển khai javax. đầy tớ. http. giao diện HttpServletResponse ).
      Để đọc giá trị của các trường trong biểu mẫu, giao diện HttpServletRequest cung cấp các phương thức sau.
        • Chuỗi getParameter(Tên chuỗi) . nhận giá trị của một trường được chỉ định bởi tên đã cho, dưới dạng Chuỗi. Phương thức trả về null nếu không có trường biểu mẫu nào tồn tại với tên đã cho.
        • Chuỗi[] getParameterValues(Tên chuỗi) . nhận các giá trị của một nhóm các trường có cùng tên, trong một mảng các đối tượng Chuỗi. Phương thức trả về null nếu không có trường nào tồn tại với tên đã cho.
      Lưu ý rằng các phương thức trên cũng có thể xử lý các tham số trong chuỗi truy vấn của URL, do đó có tên getParameter. Ví dụ: chúng ta có thể viết đoạn mã sau trong phương thức doPost() để đọc giá trị của các trường trong biểu mẫu.
      String username = request.getParameter("username");
      String password = request.getParameter("password");
      Để gửi phản hồi lại cho khách hàng, chúng ta cần lấy một người viết từ đối tượng phản hồi bằng cách gọi phương thức getWriter() của HttpServletResponse interface:
      PrintWriter writer = response.getWriter();
      Then use the print() hoặc println() để gửi . Ví dụ.
      String htmlRespone = "";
      htmlRespone += "

      Your username is: " + username + "

      "; htmlRespone += ""; writer.println(htmlRespone);
      Đây là mã hoàn chỉnh của lớp servlet để xử lý biểu mẫu đăng nhập.
      package net.codejava.servlet;
      
      import java.io.IOException;
      import java.io.PrintWriter;
      
      import javax.servlet.ServletException;
      import javax.servlet.annotation.WebServlet;
      import javax.servlet.http.HttpServlet;
      import javax.servlet.http.HttpServletRequest;
      import javax.servlet.http.HttpServletResponse;
      
      @WebServlet("/loginServlet")
      public class LoginServlet extends HttpServlet {
      
      	protected void doPost(HttpServletRequest request,
      			HttpServletResponse response) throws ServletException, IOException {
      		
      		// read form fields
      		String username = request.getParameter("username");
      		String password = request.getParameter("password");
      		
      		System.out.println("username: " + username);
      		System.out.println("password: " + password);
      
      		// do some processing here...
      		
      		// get response writer
      		PrintWriter writer = response.getWriter();
      		
      		// build HTML code
      		String htmlRespone = "";
      		htmlRespone += "

      Your username is: " + username + "
      "; htmlRespone += "Your password is: " + password + "

      "; htmlRespone += ""; // return response writer.println(htmlRespone); } }
      Đây là kết quả ví dụ khi gửi biểu mẫu đăng nhập trên trong trình duyệt.
      Mã htmljava
      Cho đến giờ, bạn đã nắm rõ thông tin chi tiết khi xử lý dữ liệu biểu mẫu HTML bằng Java servlet. Để bạn tham khảo, chúng tôi cung cấp danh sách các ví dụ để xử lý các trường biểu mẫu HTML phổ biến như bên dưới. Lưu ý rằng chúng tôi sử dụng Hệ thống. ngoài. println() trong servlet để demo đầu ra.

      1. Đọc giá trị của trường văn bản và trường mật khẩu

      • Mã HTML.
        ______6
      • Hình ảnh hiện trường
        Mã htmljava
      • Mã Java trong servlet.
        ______7
      • đầu ra
      ________số 8

       

      2. Đọc giá trị của trường hộp kiểm

      • Mã HTML.
        ______9
      • Hình ảnh hiện trường
        Mã htmljava
      • Mã Java trong servlet.
        ______10
      • đầu ra.
        @WebServlet("/loginServlet")
        public class LoginServlet extends HttpServlet {
        
        	protected void doPost(HttpServletRequest request,
        			HttpServletResponse response) throws ServletException, IOException {
        
        		// code to process the form...
        
        	}
        
        }
        1
       

      3. Đọc giá trị của trường nút radio

      • Mã HTML.
        ______12
      • Hình ảnh hiện trường.  
        Mã htmljava
      • Mã Java trong servlet.
        ______13
      • đầu ra
      @WebServlet("/loginServlet")
      public class LoginServlet extends HttpServlet {
      
      	protected void doPost(HttpServletRequest request,
      			HttpServletResponse response) throws ServletException, IOException {
      
      		// code to process the form...
      
      	}
      
      }
      4

      4. Đọc giá trị của trường vùng văn bản

      • Mã HTML.
        ______15
      • Hình ảnh hiện trường.  
        Mã htmljava
      • Mã Java trong servlet.
        ______16
      • đầu ra
      @WebServlet("/loginServlet")
      public class LoginServlet extends HttpServlet {
      
      	protected void doPost(HttpServletRequest request,
      			HttpServletResponse response) throws ServletException, IOException {
      
      		// code to process the form...
      
      	}
      
      }
      7

      5. Đọc giá trị của trường danh sách thả xuống (hộp tổ hợp)

      • Mã HTML.
        ______18
      • Hình ảnh hiện trường.  
        Mã htmljava
      • Mã Java trong servlet.
        ______19
      • đầu ra
      String username = request.getParameter("username");
      String password = request.getParameter("password");
      0

      6. Đọc dữ liệu của trường tải tệp lên

      Để tạo biểu mẫu để tải tệp lên, chúng ta cần chỉ định thuộc tính enctype cho < .
      String username = request.getParameter("username");
      String password = request.getParameter("password");
      1Để xử lý tệp tải lên ở phía máy chủ với Java servlet, chúng tôi đề xuất các hướng dẫn này.
      tag as follow:
      String username = request.getParameter("username");
      String password = request.getParameter("password");
      1For handling file upload on the server side with Java servlet, we recommend these tutorials:
        • Dịch vụ tải lên tệp với Tải lên tệp chung của Apache
        • Cách viết servlet upload file với Servlet 3. 0 API
      Đối với các ví dụ trong hướng dẫn này, bạn có thể tải xuống dự án dựa trên Eclipse cũng như tệp WAR có thể triển khai trong phần tệp đính kèm.   

      Hướng dẫn Java Servlet khác

       
      • Bắt đầu nhanh Java Servlet cho người mới bắt đầu (XML)
      • Cách tạo và chạy Java Servlet cho người mới bắt đầu (Chú thích)
      • Java Servlet và JSP Hướng dẫn Hello World với Eclipse, Maven và Apache Tomcat
      • Ví dụ về Servlet tải xuống tệp Java
      • Tải tệp lên servlet mà không cần sử dụng biểu mẫu HTML
      • Cách sử dụng Cookies trong ứng dụng web Java
      • Cách sử dụng Phiên trong ứng dụng web Java


      Thông tin về các Tác giả

      Mã htmljava
      Nam Ha Minh is certified Java programmer (SCJP and SCWCD). He started programming with Java in the time of Java 1.4 and has been falling in love with Java since then. Make friend with him on Facebook and watch his Java videos you YouTube.



      Tệp đính kèm.

      Mã htmljava
      FormHandlingServlet. war[Tệp WAR có thể triển khai]4 kB
      Mã htmljava
      FormHandlingServlet. zip[Dự án Eclipse]11 kB

      Thêm bình luận

         

      Báo cho tôi biết khi có comment mới

      Gửi

      Hủy bỏ

      Bình luận

      1234567891011

      #55 Anar2022-10-22 05. 31

      Cảm ơn ngài, điều này là hoàn hảo

      Trích dẫn

      #54 monika2022-09-22 02. 12

      tôi nên chạy mã này ở đâu?
      bạn có thể vui lòng cho tôi biết môi trường làm việc không.

      Trích dẫn

      #53 Shimelis tesfaye2022-08-19 06. 30

      Tôi thích nó là hữu ích

      Trích dẫn

      #52 Surya vasudeva2022-03-02 06. 31

      tập tin. ///C. /Người dùng/jayasurya. vasudeva/Desktop/html. html

      Trích dẫn

      #51 người mới bắt đầu2021-05-21 23. 38

      Xin chào.
      Cảm ơn vì bài viết hữu ích này.
      Tôi là người mới sử dụng java web và servlet và tôi gặp sự cố.
      Tôi có một bảng trong thẻ biểu mẫu và một số ô trong bảng có mục nhập văn bản. Tôi đang sử dụng yêu cầu. getParameter("input_name") để lấy giá trị đầu vào nhưng nó không có giá trị.

      mã là đây.








      hàng
      tên
      điểm


      1


      2

      Trích dẫn

      1234567891011

      Làm mới danh sách bình luận

      Chúng ta có thể viết mã HTML bằng Java không?

      Cách tạo Trình soạn thảo HTML trong Java .
      Nhập một số gói Swing và AWT như sau. .
      Bây giờ hãy tạo một lớp mở rộng JPanel và triển khai ActionListener. .
      Bây giờ hãy tạo một hàm tạo để khởi tạo các thành phần của Swing và HTML. .
      Bây giờ hãy tạo một sự kiện actionPerforming hoạt động trên nút "Nhấp để thay đổi" của chúng tôi

      HTML và Java có thể kết hợp không?

      Các bước để hợp nhất tệp HTML trong Java . Tải tệp HTML đầu tiên với một phiên bản của lớp Workbook. Tải tài liệu HTML thứ hai với một thể hiện của lớp Workbook. Hợp nhất các tệp bằng phương thức kết hợp (). Cells for Java APIs can be done with just few lines of code. Load the first HTML file with an instance of Workbook class. Load the second HTML document with an instance of Workbook class. Merge files using combine() method.