微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

【SpringMVC 从 0 开始】SpringMVC RESTFul 实战案例 - 实现列表功能

一、增加控制器方法

在控制器类 EmployeeController 中,添加访问列表方法

@Controller
public class EmployeeController {

    @Autowired
    private EmployeeDao employeeDao;

    @RequestMapping(value = "/employee", method = RequestMethod.GET)
    public String getAllEmployee(Model model) {
        Collection<Employee> employeeList = employeeDao.getAll();
        model.addAttribute("employeeList", employeeList);
        return "employee_list";
    }
}
  • 这里就没写 service 层了,直接在 getAllEmployee() 方法中操作 dao 层,也就是调用 employeeDao.getAll()获取所有员工信息,返回是一个列表集合。

  • 接着把数据放到 request 域里,供前端页面使用,这里使用前面讲过的 Model 方法

  • model.addAttribute("employeeList", employeeList); 中,2个分别对应 key - value,页面里使用 key 可以获取到 value 。

  • 最后返回 employee_list 页面

二、编写列表页 employee_list.html

控制器里返回了 employee_list ,这是一个 html 页面,依然写在 templates 下面:

<!DOCTYPE html>
<html lang="en" xmlns:th="http://www.thymeleaf.org">
<head>
    <Meta charset="UTF-8">
    <title>员工信息</title>
</head>
<body>
    <table border="1" cellspacing="0" cellpadding="0" style="text-align: center;">
        <tr>
            <th colspan="5">员工列表</th>
        </tr>
        <tr>
            <th>id</th>
            <th>lastName</th>
            <th>email</th>
            <th>gender</th>
            <th>options</th>
        </tr>
        <!--循环后端放到request域中的数据 employeeList-->
        <tr th:each="employee : ${employeeList}">
            <td th:text="${employee.id}"></td>
            <td th:text="${employee.lastName}"></td>
            <td th:text="${employee.email}"></td>
            <td th:text="${employee.gender}"></td>
            <td>
                <a href="">删除</a>
                <a href="">更新</a>
            </td>
        </tr>
    </table>
</body>
</html>
  • 这里使用了简单的样式,使其看起来更像个列表。

  • 每一行的数据,要通过循环后端放到 request 域中的数据 employeeList,得到单个对象 employee,然后就可以将对象的属性获取出来展示, 比如 employee.id 。

  • th:each${}这些都是 thymeleaf 的用法

三、访问列表页

重新部署应用。

因为在首页中,已经加了跳转列表页的超链接,直接点击。

访问成功,忽略掉好不好看的问题,起码这是一个正常的列表。


感谢《尚硅谷》的学习资源。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐