Spring Boot 构建电商基础秒杀项目 (二) 使用 Spring MVC 方式获取用户信息
SpringBoot构建电商基础秒杀项目 学习笔记
修改 DOMapper
在 UserPasswordDOMapper.xml 添加:
<select id="selectByUserId" parameterType="java.lang.Integer" resultMap="BaseResultMap">select<include refid="Base_Column_List" />from user_passwordwhere user_id = #{userId,jdbcType=INTEGER}</select>
在 UserPasswordDOMapper 添加:
UserPasswordDO selectByUserId(Integer userId);
添加 model
public class UserModel {private Integer id;private String name;private Byte gender;private Integer age;private String telphone;private String registerMode;private String thirdPartyId;private String encrptPassword;public Integer getId() {return id;}public void setId(Integer id) {this.id = id;}public String getName() {return name;}public void setName(String name) {this.name = name;}public Byte getGender() {return gender;}public void setGender(Byte gender) {this.gender = gender;}public Integer getAge() {return age;}public void setAge(Integer age) {this.age = age;}public String getTelphone() {return telphone;}public void setTelphone(String telphone) {this.telphone = telphone;}public String getRegisterMode() {return registerMode;}public void setRegisterMode(String registerMode) {this.registerMode = registerMode;}public String getThirdPartyId() {return thirdPartyId;}public void setThirdPartyId(String thirdPartyId) {this.thirdPartyId = thirdPartyId;}public String getEncrptPassword() {return encrptPassword;}public void setEncrptPassword(String encrptPassword) {this.encrptPassword = encrptPassword;}}
添加 service
添加接口:
public interface UserService {UserModel getUserById(Integer id);
}
添加接口的实现:
@Service
public class UserServiceImpl implements UserService {@Autowiredprivate UserDOMapper userDOMapper;@Autowiredprivate UserPasswordDOMapper userPasswordDOMapper;@Overridepublic UserModel getUserById(Integer id){UserDO userDO = userDOMapper.selectByPrimaryKey(id);if(userDO == null){return null;}UserPasswordDO userPasswordDO = userPasswordDOMapper.selectByUserId(userDO.getId());return convertFromDataObject(userDO, userPasswordDO);}private UserModel convertFromDataObject(UserDO userDO, UserPasswordDO userPasswordDO){if(userDO == null){return null;}UserModel userModel = new UserModel();BeanUtils.copyProperties(userDO, userModel);if(userPasswordDO != null){userModel.setEncrptPassword(userPasswordDO.getEncrptPassword());}return userModel;}
}
添加 viewobject
public class UserVO {private Integer id;private String name;private Byte gender;private Integer age;private String telphone;public Integer getId() {return id;}public void setId(Integer id) {this.id = id;}public String getName() {return name;}public void setName(String name) {this.name = name;}public Byte getGender() {return gender;}public void setGender(Byte gender) {this.gender = gender;}public Integer getAge() {return age;}public void setAge(Integer age) {this.age = age;}public String getTelphone() {return telphone;}public void setTelphone(String telphone) {this.telphone = telphone;}
}
添加 controller
@Controller("user")
@RequestMapping("/user")
public class UserController {@Autowiredprivate UserService userService;@RequestMapping("/get")@ResponseBodypublic UserVO getUser(@RequestParam(name="id") Integer id){UserModel userModel = userService.getUserById(id);return convertFromModel(userModel);}private UserVO convertFromModel(UserModel userModel){if(userModel == null){return null;}UserVO userVO = new UserVO();BeanUtils.copyProperties(userModel, userVO);return userVO;}
}
data object: 与数据库完全映射,不包含任何逻辑
model: 业务交互逻辑模型
view object: 前端展示数据
源码:spring-boot-seckill
转载于:https://www.cnblogs.com/victorbu/p/10544653.html
Spring Boot 构建电商基础秒杀项目 (二) 使用 Spring MVC 方式获取用户信息相关推荐
- SpringBoot构建电商基础秒杀项目——用户模型管理
项目进展: 已经完成了springboot + MVC + mybatis 框架搭建,外加常态的错误异常定义.正确的返回值类型定义. 接下来还需完成模型能力管理,其包括用户模型.商品模型.下单模型.秒 ...
- SpringBoot构建电商基础秒杀项目知识点总结(第3章)
文章目录 3-1 使用SpringMVC方式开发用户信息 1.springMVC中Model的设计思想 2.对象复制函数,用于不同层的model的转化 3.需要在controller方法上加上@res ...
- 小程序基础开发(三):授权,获取用户信息,注册,登录,简单封装request请求
一,授权 1,首先在app.js里检测用户是否授权 // 查看是否授权wx.getSetting({success: function (res) {if (res.authSetting['scop ...
- 使用Spring Boot构建独立的OAuth服务器(三)
2019独角兽企业重金招聘Python工程师标准>>> 在 使用Spring Boot构建独立的OAuth服务器(二) 中配置了一个独立的OAuth服务器,这里要对Resource, ...
- spring boot构建基础版web项目(一)springboot、thymeleaf控制层基础构
原文作者:弥诺R 原文地址:http://www.minuor.com/147852147/article 转载声明:转载请注明原文地址,注意版权维护,谢谢! 写前说明 根据个人在各篇博文中看到的信息 ...
- 用Elasticsearch构建电商搜索平台,一个极有代表性的基础技术架构和算法实践案例
转自:http://www.sohu.com/a/114545287_116235 电商数据系统主要类型 一个中等的电商平台,每天都要产生百万条原始数据,上亿条用户行为数据.一般来说,电商数据一般有3 ...
- 用Elasticsearch构建电商搜索平台,一个极有代表性的基础技术架构和算法实践案例(转)
转自:https://blog.csdn.net/jek123456/article/details/54562158 随着数据规模的爆炸式增长,如何从海量的历史,实时数据中快速获取有用的信息,变得越 ...
- Java电商系统秒杀怎么做?
有的时候,获取秒杀项目经历的代价是惨痛的- 比如我 前阵子我司(某十八线厂子)的运营策划了一场1元秒杀活动.一开始觉得肯定不会有很多人参与啊,于是没有准确的预估好用户的访问量.结果,你猜发生了什么:活 ...
- Spring Boot构建多租户SaaS平台核心技术指南
点击上方蓝色"程序猿DD",选择"设为星标" 回复"资源"获取独家整理的学习资料! 作者 | 树下魅狐 来源 | oschina.net/r ...
- Spring Boot 构建多租户 SaaS 平台核心技术指南
1. 概述 笔者从2014年开始接触SaaS(Software as a Service),即多租户(或多承租)软件应用平台:并一直从事相关领域的架构设计及研发工作.机缘巧合,在笔者本科毕业设计时完成 ...
最新文章
- JSP与Web技术概论
- [名词解释] intuitive
- 再谈 Application ProvidedAar
- 集群环境配置遇到的问题(随时更新)
- Get Requests with Json Data Get Requests with Url Parameters
- Linux 便笺技巧专栏
- php7.0 freetype_php7.0.5安装教程
- 汇编 MOVSX与MOVZX 指令
- 长距离大口径输水PCCP管道泄漏监测系统解决方案
- 基于java的网上鲜花销售系统
- 使用Matlab对大地测量学中的大地坐标和大地空间直角坐标进行相互转换
- Java 使用嵌套 for 循环打印皇冠
- 报错 mysql 1194
- springboot+shrio简易登录登出和用户权限认证。
- 湿化学清洗过程中晶片污染控制方法
- 程序员转行后能做什么?
- window10家庭版安装docker记录
- 吴忠军 - 养生之道 老人健康长寿的大秘诀
- Ubuntu包依赖损坏的解决unmet dependencies
- linux串口蜂鸣器报警电路,蜂鸣器报警器电路图大全(五款模拟电路设计原理图详解)...
热门文章
- Atitit 稳定性提升的艺术 之技术解决之道 目录 1. 2. 为什么会发生稳定性问题	1	1 2. 大原则	1 2.1. 尽快释放资源类似php最好的稳定性	1 2.2. Nginx 负载均衡
- Atitit 理解参数 目录 1. 参数	1 1.1. 意义	1 1.2. 形式参数 实际参数	1 1.3. 默认参数 vs 必须参数	2 1.4. 位置参数,那么这个命名关键字参数	2 1.5. I
- Atitit 短信 技术的概论 短信备份 attilax总结 1.1. 短信的历史	1 1.2. 短信长度 160字的长度限制灵感来自对明信片的研究。明信片。大多数明信片上的字符不超过160个
- Atitit js es5 es6新特性 attilax总结
- atitit.提升备份文件复制速度(4) ---数据挖掘 获取回收站文件列表
- atitit。自定义uml MOF EMF体系eclipse emf 教程o7t
- paip.php调试不能显示局部变量内容with xdebug
- bbs与BLOG与SNS在区别
- API网关的几点思考
- 资管新规这样规定,我的货基该怎么办?