使用JSON处理数据(一)

内容:使用注解方式封装类;获取表单数据

(一)首先,建一个Employee实体类(pojo/entity)


@Data 提供getter()和setter()方法
@AllArgsConstructor 提供全参构造方法
@NoArgsConstructor 提供空参构造方法

使用上面三个注解可以快速实现getter()和setter()、全参构造方法和空参构造方法

import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;

@Data
@AllArgsConstructor
@NoArgsConstructor
public class Employee {
    private String name;
    private String department;
    private String number;
    private int salary;
}

当然如果你需要构造上边的单个或三两个的参数方法,在空白处右键,选择Generate

点击构造方法:Constructor,当然,如果需要某些属性的Getter()方法也是在这个界面创建

 

 按住ctrl键,鼠标点击需要构造的属性即可

(二)创建HTML页面 


<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>员工表</title>
    <style>
        table, tr, td {
            border: 1px solid black;
        }
    </style>
</head>
<body>
<table>
    <tr>
        <th>员工表</th>
    </tr>
    <tr>
        <td>姓名</td>
        <td>部门</td>
        <td>工号</td>
        <td>薪水</td>
    </tr>
    <tr th:each="employee : ${employees}">
        <td th:text="${employee.name}"></td>
        <td th:text="${employee.department}"></td>
        <td th:text="${employee.number}"></td>
        <td th:text="${employee.salary}"></td>
    </tr>
</table>
</body>
</html>

(三)EmployeeListConctroller类


注解 作用 请求 等价于
@GetMapping 用于处理Http GET请求,并将请求映射到具体的处理方法 @GetMapping("/xxx") @RequestMapping(method=RequestMethod.GET)
@PostMapping 用于处理HTTP POST请求,并将请求映射到具体的处理方法中 @PostMapping("/xxx") @RequestMapping(method=HttpMethod.POST)
@PutMapping 用于处理HTTP PUT请求,并将请求映射到具体的处理方法中 @PutMapping("/xxx") @RequestMapping(method=HttpMethod.PUT)
@DeleteMapping 用于处理HTTP DELETE请求,并将请求映射到删除方法中 @DeleteMapping("/xxx") @RequestMapping(method=HttpMethod.DELETE)
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.GetMapping;

import java.util.Arrays;

@Controller
public class EmployeeListController {
    @GetMapping("/employee.html")
    public String list(Model model){
        model.addAttribute("employees", Arrays.asList(
                new Employee("张章","销售部","A3333",9000),
                new Employee("小李","技术部","B3333",19000)
        ));
        return "employee";//返回一个视图
    }
}

启动项目,效果如下

总结:

最后分享一个遇到的小问题,在整个项目里边不能有相同的请求路径,比如:在User类的@PostMapping("/addOne"),而在Employee类也写了@PostMapping("/addOne"),启动项目后,出现以下内容:

 把两个相同的请求路径,改掉其中一个即可。

猜你喜欢

转载自blog.csdn.net/qq_53376718/article/details/129412186