关键词:
1. 实现流程
2. 后端接口开发
2.1 完成DAO操作
- 创建实体类
@Data
@NoArgsConstructor
@AllArgsConstructor
@ApiModel(value = "User对象",description = "⽤户/买家信息")
public class User
private int userId;
private String username;
private String password;
private String nickname;
private String realname;
private String userImg;
private String userMobile;
private String userEmail;
private String userSex;
private Date userBirth;
private Date userRegtime;
private Date userModtime;
- 创建DAO接口、定义操作⽅法
public interface UserDAO
//⽤户注册
public int insert(User user);
//根据⽤户名查询⽤户信息
public User query(String name);
;
- 创建DAO接口的mapper⽂件并完成配置
<mapper namespace="com.qfedu.fmmall.dao.UserDAO">
<insert id="insertUser">
insert into users(username,password,user_regtime,user_modtime)
values(#username,#password,#userRegtime,#userModtime)
</insert>
<resultMap id="userMap" type="User">
<id column="user_id" property="userId"/>
<result column="username" property="username"/>
<result column="password" property="password"/>
<result column="nickname" property="nickname"/>
<result column="realname" property="realname"/>
<result column="user_img" property="userImg"/>
<result column="user_mobile" property="userMobile"/>
<result column="user_email" property="userEmail"/>
<result column="user_sex" property="userSex"/>
<result column="user_birth" property="userBirth"/>
<result column="user_regtime" property="userRegtime"/>
<result column="user_modtime" property="userModtime"/>
</resultMap>
<select id="queryUserByName" resultMap="userMap">
select
user_id,
username,
password,
nickname,
realname,
user_img,
user_mobile,
user_email,
user_sex,
user_birth,
user_regtime,
user_modtime
from users
where username=#name
</select>
</mapper>
2.2 完成Service业务
- 创建service接口
public interface UserService
//⽤户注册
public ResultVO userResgit(String name, String pwd);
//⽤户登录
public ResultVO checkLogin(String name, String pwd);
- 创建service接口实现类,完成业务实现
@Service
public class UserServiceImpl implements UserService
@Autowired
private UserDAO userDAO;
@Transactional
public ResultVO userResgit(String name, String pwd)
synchronized (this)
//1.根据⽤户查询,这个⽤户是否已经被注册
User user = userDAO.queryUserByName(name);
//2.如果没有被注册则进⾏保存操作
if (user == null)
String md5Pwd = MD5Utils.md5(pwd);
user = new User();
user.setUsername(name);
user.setPassword(md5Pwd);
user.setUserRegtime(new Date());
user.setUserModtime(new Date());
int i = userDAO.insertUser(user);
if (i > 0)
return new ResultVO(10000, "注册成功!", null);
else
return new ResultVO(10002, "注册失败!", null);
else
return new ResultVO(10001, "⽤户名已经被注册!", null);
@Override
public ResultVO checkLogin(String name, String pwd)
User user = userDAO.queryUserByName(name);
if(user == null)
return new ResultVO(10001,"登录失败,⽤户名不存在!",null);
else
String md5Pwd = MD5Utils.md5(pwd);
if(md5Pwd.equals(user.getPassword()))
return new ResultVO(10000,"登录成功!",user);
else
return new ResultVO(10001,"登录失败,密码错误!",null);
2.3 完成Controller提供接口
- 创建controller,调⽤service
- 添加接口注解
@RestController
@RequestMapping("/user")
@Api(value = "提供⽤户的登录和注册接⼝",tags = "⽤户管理")
public class UserController
@Resource
private UserService userService;
@ApiOperation("⽤户登录接⼝")
@ApiImplicitParams(
@ApiImplicitParam(dataType = "string",name = "username", value = "⽤户登录账
号",required = true),
@ApiImplicitParam(dataType = "string",name = "password", value = "⽤户登录密
码",required = true)
)
@GetMapping("/login")
public ResultVO login(@RequestParam("username") String name,
@RequestParam(value = "password") String pwd)
ResultVO resultVO = userService.checkLogin(name, pwd);
return resultVO;
@ApiOperation("⽤户注册接⼝")
@ApiImplicitParams(
@ApiImplicitParam(dataType = "string",name = "username", value = "⽤户注册账
号",required = true),
@ApiImplicitParam(dataType = "string",name = "password", value = "⽤户注册密
码",required = true)
)
@PostMapping("/regist")
public ResultVO regist(String username,String password)
ResultVO resultVO = userService.userResgit(username, password);
return resultVO;
2.4 接口测试
基于swagger进行测试
springboot+vue+实战项目之第3集(代码片段)
SpringBoot+vue+实战项目--锋迷商城1.《锋迷商城》业务流程设计-接⼝规范1.1前后端分离与单体架构流程实现的区别1.1.1单体架构1.1.2前后端分离架构1.2接口介绍1.2.1接口概念1.2.2接口规范1.3Swagger1.3.1作用1.3.2Swagger整合1.3.3Swagger注... 查看详情
springboot+vue+实战项目之第2集(代码片段)
SpringBoot+vue+实战项目--锋迷商城1.Maven聚合工程1.1Maven聚合工程概念1.2创建Maven聚合工程1.2.1创建Maven父工程1.2.2创建Module1.3Maven聚合工程依赖继承1.3.1依赖继承1.3.2依赖版本管理2.《锋迷商城》项目搭建2.1技术储备2.2创建Maven聚... 查看详情
java网络商城项目springboot+springcloud+vue网络商城(ssm前后端分离项目)八(文件的上传fastdfs和校验)(nginx的请求前缀配置,在发布项目的时候要注意)(代(代
一、品牌新增功能(图片上传)1、新建一个微服务:文件的上传的微服务2、添加依赖<?xmlversion="1.0"encoding="UTF-8"?><projectxmlns="http://maven.apache.org/POM/4.0.0"xmlns:xsi& 查看详情
第二季springboot+vue前后端分离项目实战笔记(代码片段)
配套视频在b站:【第二季】全网最简单但实用的SpringBoot+Vue前后端分离项目实战SpringBoot+Vue项目实战第二季一、些许优化刷新丢失其它标签页缓存已打开标签页tagsViewCache()window.addEventListener("beforeunload",()=>letta... 查看详情
精通系列springboot集成elasticsearch+项目实战(代码片段)
Java之ElasticSearch7.x.x+SpringBoot+爬虫+项目实战【一篇文章精通系列】【SpringBoot集成ElasticSearch+项目实战】一、ElasticSearch的Java官方文档1、查看官方文档2、找到了原生的依赖3、初始化二、创建SpringBoot项目1、创建项目2、... 查看详情
springboot+vue实战wiki
1、idea设置encodingmavencompileauto2、versioncontrolcrtl+d进行代码对比3、crtl+r替换4、mybatis插件5、ideahttp文件6、将布局写在app.vue,将各页面变化部分放各自路由页面 查看详情
个人项目实战2,springboot集成(html+vue.js)前端框架(代码片段)
文章目录前言一,导入VUE组件库二,springboot引入html1,springboot配置文件中配置静态资源2,编写一个html3,关键代码(1)引入饿了么CSS(2)引入关键JS(3)编写页面body内容(4)... 查看详情
基于vue+vue-cli+webpack搭建渐进式高可维护性前端实战项目(代码片段)
本文是专栏《Vue+SpringBoot前后端分离项目实战》的实战第一篇,将从Vue脚手架安装开始,逐步带你搭建起一套管理系统所需的架构。当然,在默认安装完成之后,会对文件目录进行初步的细化拆分,以... 查看详情
基于springboot+springcloud+vue前后端分离项目实战--开篇(代码片段)
...强强联手(天狗组合)专栏作者简介专栏的优势后端规划1.SpringBoot和SpringCloud的选择2.Mybatis和MybatisPlus和JPA的选择3.MySQL和Mongodb的选择4.Redis和RocketMQ5.后端规划小总结后端大纲提前掌握的知识点一期SpringBoot二期SpringCloudAlibaba微服务全... 查看详情
springboot之第一个springboot程序(代码片段)
...nish。启动之后:右下角选择自动导入。2、在pom.xml中导入springboot相关依赖<?xmlversion="1.0"encoding="UTF-8"?><projec 查看详情
15个优秀开源的springboot学习项目
SpringBoot算是目前Java领域最火的技术栈了,松哥年初出版的《SpringBoot+Vue全栈开发实战》迄今为止已经加印了8次,SpringBoot的受欢迎程度可见一斑。经常有人问松哥有没有推荐的SpringBoot学习资料?当然有!买松哥书就对了,哈哈... 查看详情
项目部署vue+springboot前后分离个人博客项目实战部署保姆教程linux+docker安装部署启动一条龙教程(代码片段)
目录SpringBoot开源项目部署在75元阿里云centos7上,小白手把手教程技术栈系统环境需求后端部署步骤redis配置前端域名从如何拥有个人服务器和域名开始说起。在职程序员教你如何选择个人服务器和个人域名,让自己变得IT... 查看详情
最火的13个springboot实战开源项目推荐!总有一款适合你
...om/Snailclimb/…Guide哥注:下面这些推荐的项目几乎都和SpringBoot有关,毕竟这年头没有理由再搞SSM/SSH这些东西了。商城系统Guide哥注:下面的商城系统大多比较复杂比如mall,如果没有Java基础和SpringBoot都还没有摸熟的话不推荐过... 查看详情
springboot之第一个应用helloworld(代码片段)
新建一个maven项目 pom.xml增加如下配置<properties><project.build.sourceEncoding>UTF-8</project.build.sourceEncoding><maven.compiler.source>1.8</maven.compiler.source><maven.co 查看详情
shiro三连斩之第三斩,整合springboot
shiro爱springboot中使用,还有thymeleaf前端框架。主要是如何配置pom.xml配置依赖<?xmlversion="1.0"encoding="UTF-8"?><projectxmlns="http://maven.apache.org/POM/4.0.0"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance 查看详情
springboot知识体系+vue3实战wiki知识库系统笔记demo4_mybatis_example(代码片段)
SpringBoot知识体系+Vue3实战WIKI知识库系统笔记前端将参数传到后台。这里接收参数可以不加修饰的@,参数会自动绑定到同名的属性上。这里也可以使用对象。前端传来的参数可以自定绑定到对象的属性里面。要保证名字... 查看详情
基于java+springboot+vue+element驾校管理系统设计和实现(代码片段)
...藏)目录一、前言介绍:二、主要技术: 2.1SpringBoot框架介绍:2.2MYSQL数据库:三、系统设计:3.1系统架构设计:3.2 登录时序图设计:四、功能截图: 4.1登录注册:4.2前端页面:4.2.1系... 查看详情
基于java+springboot+vue+element驾校管理系统设计和实现(代码片段)
...藏)目录一、前言介绍:二、主要技术: 2.1SpringBoot框架介绍:2.2MYSQL数据库:三、系统设计:3.1系统架构设计:3.2 登录时序图设计:四、功能截图: 4.1登录注册:4.2前端页面:4.2.1系... 查看详情