feat-完成登录测试,接下来准备正式开始写

This commit is contained in:
DC_DC 2024-04-23 20:12:25 +08:00
parent 6070744300
commit ae22a1db53
6 changed files with 49 additions and 9 deletions

View File

@ -51,6 +51,11 @@
<version>24.1.0</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>jakarta.validation</groupId>
<artifactId>jakarta.validation-api</artifactId>
<version>3.0.2</version>
</dependency>
</dependencies>
<build>

View File

@ -25,6 +25,6 @@ public class LoggingAspect {
Object targetObject = joinPoint.getTarget();
Class<?> targetClass = targetObject.getClass();
log.info("[CONTROL] 获取 {} 类的 {} 方法", targetClass.getName(), methodName);
log.info("[CONTROLLER] 获取 {} 类的 {} 方法", targetClass.getName(), methodName);
}
}

View File

@ -1,11 +1,17 @@
package cn.dcsy.stsy.controllers;
import cn.dcsy.stsy.models.voData.BasicLoginVO;
import cn.dcsy.stsy.service.UserService;
import cn.dcsy.stsy.utils.BaseResponse;
import cn.dcsy.stsy.utils.ErrorCode;
import cn.dcsy.stsy.utils.ResultUtil;
import jakarta.servlet.http.HttpServletRequest;
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.jetbrains.annotations.NotNull;
import org.springframework.http.ResponseEntity;
import org.springframework.validation.BindingResult;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
/**
@ -31,13 +37,20 @@ public class BasicController {
return ResultUtil.success("访问成功");
}
/*
/**
* 用户登录
* */
@PostMapping("/login")
public ResponseEntity<BaseResponse> login(@RequestParam String username, @RequestParam String password) {
log.info("尝试登录 用户名: {}", username);
return userService.login(username, password);
public ResponseEntity<BaseResponse> login(
@RequestBody @Validated BasicLoginVO basicLoginVO,
@NotNull BindingResult bindingResult,
HttpServletRequest request
) {
log.info("\t尝试登录 用户名: {}", basicLoginVO.getUsername());
if (bindingResult.hasErrors()) {
return ResultUtil.error("RequestBodyError", ErrorCode.REQUEST_BODY_ERROR, bindingResult.getAllErrors());
}
return userService.login(request, basicLoginVO);
}
@GetMapping("/user/{userId}")

View File

@ -0,0 +1,18 @@
package cn.dcsy.stsy.models.voData;
import jakarta.validation.constraints.NotBlank;
import lombok.Getter;
import lombok.Setter;
/**
* @author DC_DC
* Date: 2024/4/23/19:50
*/
@Getter
@Setter
public class BasicLoginVO {
@NotBlank(message = "用户名不能为空")
private String username;
@NotBlank(message = "用户名不能为空")
private String password;
}

View File

@ -1,6 +1,8 @@
package cn.dcsy.stsy.service;
import cn.dcsy.stsy.models.voData.BasicLoginVO;
import cn.dcsy.stsy.utils.BaseResponse;
import jakarta.servlet.http.HttpServletRequest;
import org.springframework.http.ResponseEntity;
/**
@ -8,7 +10,7 @@ import org.springframework.http.ResponseEntity;
* Date: 2024/4/16/21:51
*/
public interface UserService {
ResponseEntity<BaseResponse> login(String username, String password);
ResponseEntity<BaseResponse> login(HttpServletRequest request, BasicLoginVO basicLoginVO);
ResponseEntity<BaseResponse> getUserInfo(String userId);
}

View File

@ -2,8 +2,10 @@ package cn.dcsy.stsy.service.impl;
import cn.dcsy.stsy.dao.UserDAO;
import cn.dcsy.stsy.models.doData.UserDemoDO;
import cn.dcsy.stsy.models.voData.BasicLoginVO;
import cn.dcsy.stsy.service.UserService;
import cn.dcsy.stsy.utils.BaseResponse;
import jakarta.servlet.http.HttpServletRequest;
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.springframework.http.ResponseEntity;
@ -20,11 +22,11 @@ public class UserServiceImpl implements UserService {
private final UserDAO userDAO;
@Override
public ResponseEntity<BaseResponse> login(String username, String password) {
UserDemoDO userDemoDO = userDAO.getPasswordByUserName(username);
public ResponseEntity<BaseResponse> login(HttpServletRequest request, BasicLoginVO basicLoginVO) {
UserDemoDO userDemoDO = userDAO.getPasswordByUserName(basicLoginVO.getUsername());
if (userDemoDO != null){
log.info(userDemoDO.toString());
if (userDemoDO.getPassword().equals(password)){
if (userDemoDO.getPassword().equals(basicLoginVO.getPassword())){
BaseResponse response = new BaseResponse("登录成功", 200, "Success", userDemoDO);
return ResponseEntity.ok(response);
} else {