project-planning - 考虑到要求,在规划 Web 应用程序时首先要开始什么?
问题描述
这是我的任务。我知道如何执行此操作,所以我不要求解决方案。我想知道如何开始我的计划,最佳做法是什么?我应该从控制器 POV 开始吗?或站点地图?线框?还是UML图?正确的步骤是什么?
概述
您应该使用 Springboot Web 服务 (RESTful API) 和 HTML (Thymeleaf) 构建一个应用程序,充当客户和店主使用的简单电子商务商店。
您可以自行决定以下要求中未提及的业务逻辑。
项目要求:
- 项目包含两个模块 - 15%
- Web 应用程序作为使用模板引擎的用户界面,例如 Thymeleaf、免费标记……</li>
- 用于与数据库(例如 H2)交互并将数据返回到 Web 应用程序的 Restful api。应实施授权。
- 来自 API 的验证输入和分页结果集
- 使用 Junit 或 Mockito 进行单元测试
- 包含日志框架
- 分析的完整性和清晰程度——设计文档/自述文件
客户功能 - 25%
- 产品页面显示产品列表。奖励:用户可以搜索某些产品
- 用户可以将不同数量的多个产品添加到购物车
- 在购物车页面,用户可以更改购物车订单项
- 您可以跳过交付部分。无需实时付款。应使用虚拟支付实现。
- 用户应该能够根据订单 ID 查看/搜索订单信息
店主的功能 - 25%
- 添加产品或更改所有者列出的现有产品需要登录您可以创建一些预定义的帐户,但您不能在代码中硬编码用户帐户
- 店主不能更改其他店主的产品
- 能够查看他们的产品订单+收入
奖励功能:(推荐给体验开发者)- 15%
- 授权:
- Restful API 受 JWT 令牌保护
- 授权类型为 Bearer
- 访问控制是基于角色的:如果用户是店主,他们可以使用客户角色的所有功能,但客户不能使用店主的功能,例如列出产品或查看收入。因此,客户功能和 Shop Owern 功能至少需要两个令牌。您可以预先生成令牌并存储在 Web 应用程序中以发送到 API,但根据当前会话用户角色,将相应的令牌发送到 API
- 用户会话空闲时间应为 15 分钟
时间表 • 预计在 7 个工作日内提交 技术
- Java Spring Boot 项目
- H2 数据库和 JPA
- 马文
- 模板引擎,例如 Thymeleaf 提交 请压缩完成的项目以提交,包括“ReadMe.txt”以简要描述如何运行项目,最好有用户故事和实施背后的原理
解决方案
推荐阅读
- environment-variables - 如何总是逃避用户的输入?
- node.js - Node.js localhost to live server
- flutter - How to deal with different countdown in listview
- flutter - Flutter Bluetooth Serial Discovery - canceling discovery (stream closed)
- regex - Processing log file using Regex
- clojurescript - Pattern for Displaying Errors To UI In Reagent/Clojurescript
- centos7 - Postgresql unlogged tables after server shutdown cause of electricity
- android - Failed to extract manifest from APK: ProcessException: %1 is not a valid Win32 application - flutter
- r - Rstudio does not turn to dark theme for right panes on Mac; Tried all fonts and themes
- javascript - How to change text in text area with React Hooks?