1、我的 MySQL 版本是 5.7,官方下载页面是
https://dev.mysql.com/downloads/mysql/5.7.html#downloads
2、安装教程可以参考
https://blog.csdn.net/ma524654165/article/details/77855431
3、安装完成之后需要在pom文件中添加对mysql的jar包的依赖,当然你也可以在上一篇中新建springboot时和我一样直接选中相关的mysql依赖。同时,上节也说了了如何在application.yml中配置数据库连接了。 
4、执行sql语句新建一个我们项目中需要的数据库和数据表
-- ----------------------------
-- Table structure for user
-- ----------------------------
DROP TABLE IF EXISTS `user`;
CREATE TABLE `user` (
  `id` int(11) unsigned NOT NULL AUTO_INCREMENT,
  `username` varchar(255) DEFAULT NULL,
  `password` varchar(255) DEFAULT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8;
-- ----------------------------
-- Records of user
-- ----------------------------
INSERT INTO `user` VALUES ('1', 'admin', '123');
这里用户密码设置了123哦,后面测试别再输入123456了
package com.example.library.pojo;
import lombok.Data;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
@Entity    //jpa注解,表示这是一个实体类
@Data
public class User {
    @Id   //标识主键
    @GeneratedValue(strategy = GenerationType.IDENTITY)   //表示主键自增
    int id;
    String username;
    String password;
} 
Data Access Object(数据访问对象,DAO)即用来操作数据库的对象,代码中通过继承JpaRepository类构建Dao。
新建一个 package,命名为 dao,然后创建 Java Class,命名为 UserDAO。代码如下:
package com.example.library.dao;
import com.example.library.pojo.User;
import org.springframework.data.jpa.repository.JpaRepository;
public interface UserDao extends JpaRepository<User,Integer> {
    User findByUsername(String username);
    User findByUsernameAndPassword(String username, String password);
}
Jpa有自己的代码规范,这里看似一句SQL语句没写,但实际上函数的命名就为这个函数提供了相应的SQL语句。
比如 findByUsername,就是通过 username 字段查询到对应的行,并返回给 User 类。
UserService
package com.example.library.service;
import com.example.library.dao.UserDao;
import com.example.library.pojo.User;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
@Service
public class UserService {
    @Autowired
    private UserDao userDao;
    public User getByName(String username) {
        return userDao.findByUsername(username);
    }
    public boolean isExist(String username){
        User user = getByName(username);
        return null != user;
    }
    public User get(String username,String password){
        return userDao.findByUsernameAndPassword(username,password);
    }
    public void save(User user){
        userDao.save(user);
    }
}
LoginController
package com.example.library.controller;
import com.example.library.result.Result;
import com.example.library.service.UserService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.util.HtmlUtils;
import com.example.library.pojo.User;
@Controller
public class LoginController {
    @Autowired
    UserService userService;
    @CrossOrigin
    @PostMapping(value = "api/login")
    @ResponseBody
    public Result login(@RequestBody User requestUser) {
        // 对 html 标签进行转义,防止 XSS 攻击
        String username = requestUser.getUsername();
        username = HtmlUtils.htmlEscape(username);
        User user = userService.get(username, requestUser.getPassword());
        if (user == null) {
            String message = "账号密码错误";
            return new Result(400);
        } else {
            return new Result(200);
        }
    }
}
!评论内容需包含中文