"Java开发实战:MyStore项目CH02用户模块实现与知识点总结"
需积分: 5 195 浏览量
更新于2023-12-26
收藏 780KB DOCX 举报
本文将重点总结铁哥学Java中MyStore项目 CH02 用户模块的实现。用户模块包含用户登录、检查相关字段是否可用、重置密码和注册功能。在实现过程中学习了逻辑主键和物理主键的区别,通用部分的设计,常量的独立存储,postman的使用,参数的校验(@RequestParam,@RequestBody),@NotNull和@NotEmpty的区别,全局异常捕获与处理(使用SpringBoot的切面,前置建议来实现),LocalDateTime的使用,StringUtils的使用,自动生成持久层(@Autowired和Mapper),密码的MD5加密,token的生成和本地缓存(CaffeineCache,GooleGuava),主键的自动递增在Java中的设置,以及DTO和VO的使用。
第一部分讨论了用户模块的功能,包括登录、注册、获取用户信息、修改用户信息、退出登录和找回密码功能。会话跟踪方面,对传统的 Http Session 和 JWT(JSON Web Token) 进行了比较,并表示后续需要深入了解和处理。
第二部分对表的设计进行了讨论。在设计用户表时,username 是物理主键(即业务主键),id 是逻辑主键。解释了逻辑主键与物理主键的概念,以及为什么需要使用逻辑主键。业务主键和逻辑主键的区别在于,业务主键是数据库表中包含的具有业务逻辑含义的字段,而逻辑主键则是与当前表中逻辑信息无关的字段作为主键。逻辑主键的生成方式包括uuid和自增,其中自增是应用最广泛的方式。逻辑主键的使用成功地避免了主键与数据表关联耦合的问题。与业务主键不同,一旦数据发生更改,相关的所有信息都需要进行修改,而逻辑主键则能够避免这种情况。
在本文中,铁哥学Java中MyStore项目 CH02 用户模块的实现作为主要内容,对用户模块的功能进行了总结,并对表的设计进行了深入讨论,并介绍了在实现过程中学习到的知识点。
2022-08-31 上传
2022-08-31 上传
2010-08-08 上传
2020-02-29 上传
点击了解资源详情
2024-11-15 上传
2024-11-15 上传
k01012020
- 粉丝: 27
- 资源: 5
最新资源
- Java集合ArrayList实现字符串管理及效果展示
- 实现2D3D相机拾取射线的关键技术
- LiveLy-公寓管理门户:创新体验与技术实现
- 易语言打造的快捷禁止程序运行小工具
- Microgateway核心:实现配置和插件的主端口转发
- 掌握Java基本操作:增删查改入门代码详解
- Apache Tomcat 7.0.109 Windows版下载指南
- Qt实现文件系统浏览器界面设计与功能开发
- ReactJS新手实验:搭建与运行教程
- 探索生成艺术:几个月创意Processing实验
- Django框架下Cisco IOx平台实战开发案例源码解析
- 在Linux环境下配置Java版VTK开发环境
- 29街网上城市公司网站系统v1.0:企业建站全面解决方案
- WordPress CMB2插件的Suggest字段类型使用教程
- TCP协议实现的Java桌面聊天客户端应用
- ANR-WatchDog: 检测Android应用无响应并报告异常