Toggle Theme Editor
Slate Blueberry Blackcurrant Watermelon Strawberry Orange Banana Apple Emerald Chocolate Charcoal

[series Spring Boot] 7. Http Request

Discussion in 'Spring Framework' started by quydtkt, 21/11/19.

  1. quydtkt

    quydtkt Administrator

    Trong bài này, chúng ta sẽ cùng tìm hiểu về request trong Spring Boot.
    1. Truyền dữ liệu từ controller lên view trong mô hình MVC
    - Trong mô hình MVC, view là phần dùng để hiển thị dữ liệu ra màn hình cho người dùng nhìn thấy, không thực hiện xử lý tính toán.
    - Phần chịu trách nhiệm xử lý dữ liệu trước khi đưa lên view để hiển thị ra màn hình là controller.
    - Vậy controller dùng gì để đưa dữ liệu lên cho view. Hầu hết các ứng dụng java web sử dụng request để thực hiện điều này. Request có thể hiển đơn giản là một gói chứa các thông tin và yêu cầu của client gửi lên web server. Nó tồn tại từ khi trình duyệt web gửi yêu cầu lên server tới khi nhận được hồi đáp từ web server.
    - Sau khi xử lý xong dữ liệu, controller đẩy các thông tin cần hiển thị lên màn hình vào request, sau đó view sẽ lấy dữ liệu trong request ra và hiển thị lên màn hình.
    - Trong Spring Boot nói riêng và tất cả các ứng dụng java web nói chung, có thể thao tác với request thông qua class HttpServletRequest. Đây là class của java servlet.​
    2. Cách sử dụng HttpServletRequest
    HelloController.java
    PHP:
    package vn.congdongjava.controller;
     
    import org.springframework.stereotype.Controller;
    import org.springframework.web.bind.annotation.RequestMapping;
    import org.springframework.web.bind.annotation.RequestMethod;
     
    import javax.servlet.http.HttpServletRequest;
     
    @
    Controller
    public class HelloController {
     
        @
    RequestMapping(value "/"method RequestMethod.GET)
        public 
    String index(HttpServletRequest request) {
            
    request.setAttribute("name""quydtkt");
            
    request.setAttribute("age"26);
     
            return 
    "index";
        }
    }
    - Để sử dụng request, ta khai báo biến có kiểu HttpServletRequest là tham số đầu vào của request mapper. Spring Boot sẽ tự khởi tạo biến này cho chúng ta sử dụng mà không cần phải tự khởi tạo.
    - Để đưa dữ liệu vào request, ta sử dụng phương thức setAttribute.
    - HttpServletRequest cũng giống như Map, với key là String và value là Object.
    - Hầu hết mọi kiểu dữ liệu đều có thể đưa vào request.
    - Tại view, ta dùng key để truy cập đến các request attribute trong request. Tại đoạn code trên là 2 key “name” và “age”​
    index.html
    HTML:
    <!DOCTYPE HTML>
    <html>
    <head>
    	<meta charset="utf-8">
    	<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
    	<title>Cộng đồng Java - Http request</title>
    </head>
    <body>
    Name [[${name}]]<br/>
    Age [[${age}]]
    </body>
    </html>
    - Để truy cập đến các request attribute trong request trên thymeleaf, có thể dùng cú pháp [[${key}]]. Đây là cú pháp của thymeleaf. Các bạn có thể tham khảo thêm tại https://www.thymeleaf.org
    - Chạy project và truy cập vào link http://localhost:8080
    [​IMG]
    Cám ơn các bạn đã theo dõi. Hẹn gặp lại trong bài viết tiếp theo :)
     

    Attached Files:

    Last edited: 23/11/19

Chia sẻ trang này

Loading...