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

简介: 【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 的用法。


三、访问列表页


重新部署应用。


1268169-20210816235212718-1765939152.png


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


1268169-20210816235244737-1540846912.png


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

相关文章
|
3月前
|
前端开发 JavaScript
[SpringMVC]restful风格
[SpringMVC]restful风格
38 1
[SpringMVC]restful风格
|
2月前
|
SQL JavaScript Java
springboot+springm vc+mybatis实现增删改查案例!
springboot+springm vc+mybatis实现增删改查案例!
27 0
|
4月前
|
前端开发 Java Apache
JAVAEE框架技术之6-springMVC拦截器和文件上传功能
JAVAEE框架技术之6-springMVC拦截器和文件上传功能
72 0
JAVAEE框架技术之6-springMVC拦截器和文件上传功能
|
9天前
|
XML JSON 数据库
SpringMVC RESTful
SpringMVC RESTful
17 0
|
17天前
|
JSON 安全 API
Flask-Login与Flask-RESTful:扩展你的应用功能
【4月更文挑战第16天】本文介绍了两个实用的Flask扩展——Flask-Login和Flask-RESTful。Flask-Login提供用户认证和会话管理,简化了登录、注销和保护路由的逻辑。而Flask-RESTful则助力构建RESTful API,支持多种HTTP方法和请求解析。通过这两个扩展,开发者能轻松增强Flask应用的功能性,实现安全的用户认证和高效的API交互。
|
2月前
|
移动开发 Java 测试技术
Spring MVC+Spring+Mybatis实现支付宝支付功能(附完整代码)
Spring MVC+Spring+Mybatis实现支付宝支付功能(附完整代码)
22 1
|
2月前
|
前端开发 Java 网络安全
ssh(Spring+Spring mvc+hibernate)简单增删改查案例
ssh(Spring+Spring mvc+hibernate)简单增删改查案例
11 0
|
2月前
|
前端开发 Java
Springmvc入门案例(1)
Springmvc入门案例(1)
8 0
|
3月前
|
XML JSON Java
基于springMVC的RESTful服务实现
  RESTful(RESTful Web Services)一种架构风格,表述性状态转移,它不是一个软件,也不是一个标准,而是一种思想,不依赖于任何通信协议,但是开发时要成功映射到某协议时也需要遵循其标准,但不包含对通信协议的更改
24 1
|
4月前
|
JSON 前端开发 Java
Spring MVC响应结合RESTful风格开发,打造具有强大功能和良好体验的Web应用!
Spring MVC响应结合RESTful风格开发,打造具有强大功能和良好体验的Web应用!