个人作业Android学习系统开发日志一

实现登录功能springboot的搭建:
统一返回类:

package com.demo.common;

public class Result {

    private String code;
    private String msg;
    private Object data;

    public static Result success() {
        Result result = new Result();
        result.setCode("200");
        result.setMsg("请求成功");
        return result;
    }

    public static Result success(Object data) {
        Result result = success();
        result.setData(data);
        return result;
    }

    public static Result error() {
        Result result = new Result();
        result.setCode("500");
        result.setMsg("系统错误");
        return result;
    }

    public static Result error(String code, String msg) {
        Result result = new Result();
        result.setCode(code);
        result.setMsg(msg);
        return result;
    }

    public String getCode() {
        return code;
    }

    public void setCode(String code) {
        this.code = code;
    }

    public String getMsg() {
        return msg;
    }

    public void setMsg(String msg) {
        this.msg = msg;
    }

    public Object getData() {
        return data;
    }

    public void setData(Object data) {
        this.data = data;
    }
}

User类:

package com.demo.entity;


public class User {

    private Integer userId; // 学号(主键)

    private String password; // 预留字段

    private String username; // 姓名

    private String phoneNumber; // 手机号码

    private String userClass; // 班级

    public Integer getUserId() {
        return userId;
    }

    public void setUserId(Integer userId) {
        this.userId = userId;
    }

    public String getPassword() {
        return password;
    }

    public void setPassword(String password) {
        this.password = password;
    }

    public String getUsername() {
        return username;
    }

    public void setUsername(String username) {
        this.username = username;
    }

    public String getPhoneNumber() {
        return phoneNumber;
    }

    public void setPhoneNumber(String phoneNumber) {
        this.phoneNumber = phoneNumber;
    }

    public String getUserClass() {
        return userClass;
    }

    public void setUserClass(String userClass) {
        this.userClass = userClass;
    }

    @Override
    public String toString() {
        return "User{" +
                "userId=" + userId +
                ", password='" + password + '\'' +
                ", username='" + username + '\'' +
                ", phoneNumber='" + phoneNumber + '\'' +
                ", userClass='" + userClass + '\'' +
                '}';
    }
}

Service:

package com.demo.service;

import com.demo.entity.User;
import com.demo.mapper.UserMapper;
import com.github.pagehelper.PageHelper;
import com.github.pagehelper.PageInfo;
import jakarta.annotation.Resource;
import org.springframework.stereotype.Service;

import java.util.List;

@Service
public class UserService {

    @Resource
    private UserMapper userMapper;


    public void add(User user) {
        userMapper.insert(user);
    }

    public User login(User user) {
        return userMapper.login(user);
    }
}

mapper:

package com.demo.mapper;


import com.demo.entity.User;
import org.apache.ibatis.annotations.Delete;

import java.util.List;


public interface UserMapper {

    void insert(User user);

    User login(User user);
}

mapper.xml:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">

<mapper namespace="com.demo.mapper.UserMapper">

    <!-- 插入用户数据 -->
    <insert id="insert" parameterType="com.demo.entity.User">
        INSERT INTO `user` (
        user_id,
        password,
        username,
        phone_number,
        user_class
        )
        VALUES (
        #{userId},      <!-- 学号(主键) -->
        #{password},
        #{username},    <!-- 姓名 -->
        #{phoneNumber}, <!-- 手机号码 -->
        #{userClass}    <!-- 班级 -->
        )
    </insert>

    <select id="login" resultType="com.demo.entity.User">
        select * from user
        where username = #{username} and password = #{password}
    </select>

</mapper>

controller:

package com.demo.controller;

import com.demo.common.Result;
import com.demo.entity.User;
import com.demo.service.UserService;
import com.github.pagehelper.PageInfo;
import jakarta.annotation.Resource;
import org.springframework.web.bind.annotation.*;

import java.util.List;

@RestController
@RequestMapping("/user")
public class UserController {

    @Resource
    private UserService userService;

    @PostMapping("/register")
    //    @RequestBody 把前端传来的json字符串映射成java对象或者数组
    public Result add(@RequestBody User user){
        userService.add(user);
        return Result.success();
    }


    @PostMapping("/login")
    public Result login(@RequestBody User user) {
        User result = userService.login(user);
        return Result.success(result);
    }

}

posted @ 2025-03-25 23:18  vivi_vimi  阅读(24)  评论(0)    收藏  举报