文章目錄
- 前言
- 一、代碼部分
- 1. User
- 2.UserMapper1
- 3. UserSerivce
- 4. UserController1
- 5. Result
- 二、測試
- 1.注冊
- 2.再次注冊
- 總結
前言
下面介紹用戶注冊接口。
一、代碼部分
1. User
package org.example.springboot3.bigevent.entity;import com.baomidou.mybatisplus.annotation.TableId;
import lombok.Getter;
import lombok.Setter;
import lombok.ToString;
import java.time.LocalDateTime;@Getter
@Setter
@ToString
public class User {@TableIdprivate Integer id;//主鍵IDprivate String username;//用戶名private String password;//密碼private String nickname;//昵稱private String email;//郵箱private String userPic;//用戶頭像地址private LocalDateTime createTime;//創建時間private LocalDateTime updateTime;//更新時間
}
2.UserMapper1
package org.example.springboot3.bigevent.mapper;import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.apache.ibatis.annotations.Mapper;
import org.example.springboot3.bigevent.entity.User;/*** Create by zjg on 2024/5/22*/
@Mapper
public interface UserMapper1 extends BaseMapper<User> {
}
3. UserSerivce
package org.example.springboot3.bigevent.service;import org.example.springboot3.bigevent.entity.User;/*** Create by zjg on 2024/5/22*/
public interface UserSerivce {User findUserByName(String username);int addUser(String username, String password);
}
package org.example.springboot3.bigevent.service.impl;import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import org.example.springboot3.bigevent.mapper.UserMapper1;
import org.example.springboot3.bigevent.entity.User;
import org.example.springboot3.bigevent.service.UserSerivce;
import org.example.springboot3.bigevent.utils.Md5Util;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.time.LocalDateTime;/*** Create by zjg on 2024/5/22*/
@Service
public class UserSerivceImpl implements UserSerivce {@AutowiredUserMapper1 userMapper1;@Overridepublic User findUserByName(String username) {QueryWrapper<User> queryWrapper = new QueryWrapper<>();queryWrapper.ne("username", username);return userMapper1.selectOne(queryWrapper);}@Overridepublic int addUser(String username, String password) {User user = new User();user.setUsername(username);user.setPassword(Md5Util.getMD5String(password));user.setCreateTime(LocalDateTime.now());user.setUpdateTime(LocalDateTime.now());return userMapper1.insert(user);}
}
4. UserController1
package org.example.springboot3.bigevent.controller;import org.example.springboot3.bigevent.entity.Result;
import org.example.springboot3.bigevent.entity.User;
import org.example.springboot3.bigevent.service.UserSerivce;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;/*** Create by zjg on 2024/5/22*/
@RequestMapping("/user/")
@RestController
public class UserController1 {@AutowiredUserSerivce userSerivce;@RequestMapping("register")public Result register(String username, String password){User user=userSerivce.findUserByName(username);if(user==null){//用戶不存在,可以注冊int i=userSerivce.addUser(username,password);if(i!=1){return Result.error("失敗注冊,請稍后重新注冊!");}}else{return Result.error("該用戶已存在,請重新注冊!");}return Result.success();}
}
5. Result
package org.example.springboot3.bigevent.entity;import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;//統一響應結果
@Data
@NoArgsConstructor
@AllArgsConstructor
public class Result<T> {private Integer code;//業務狀態碼 0-成功 1-失敗private String message;//提示信息private T data;//響應數據//快速返回操作成功響應結果(帶響應數據)public static <E> Result<E> success(E data) {return new Result<>(0, "操作成功", data);}//快速返回操作成功響應結果public static Result success() {return new Result(0, "操作成功", null);}public static Result error(String message) {return new Result(1, message, null);}
}
二、測試
1.注冊
2.再次注冊
總結
回到頂部