内容:使用注解方式封装类;获取表单数据
(一)首先,建一个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"),启动项目后,出现以下内容:
把两个相同的请求路径,改掉其中一个即可。