1.Domian层创一个Myuser
定义id,username,password来对应数据库
public class MyUser {
private String id;
private String username;
private String password;
}
2.在dao层创一个UserMapper和UserMapper.xml
UserMapper.xml中写sql代码:
<?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.example.b2023720.dao.UserMapper">
<select id="queryByUsernamePassword" parameterType="java.util.Map"
resultType="com.example.b2023720.domain.MyUser">
select * from my_user
where username=#{username}
and password=#{password}
</select>
</mapper>
UserMapper:
package com.example.b2023720.dao;
import com.example.b2023720.domain.MyUser;
import org.apache.ibatis.annotations.Mapper;
import java.util.Map;
//把这个类映射为Mybaits
@Mapper
public interface UserMapper {
public MyUser queryByUsernamePassword(Map<String,String> map);
}
3.在service层创建Userservice和Userserviceimpl
Userservice:
public interface Userservice {
//用户登录
public boolean login(Map<String,String> map);
}
Userserviceimpl:
@Service
public class Userserviceimpl implements Userservice {
@Autowired
UserMapper userMapper;
@Override
public boolean login(Map<String, String> map) {
MyUser myUser =userMapper.queryByUsernamePassword(map);
return myUser!=null;
}
}
4.Usercontroller
账户输入密码放到数据库中,肯定要加密
去中央仓库搜:commons-codec
在pom中加入
@CrossOrigin
@RequestMapping("/user")
@RestController
public class Usercontroller {
@Autowired
Userservice userservice;
//给前端返回一个boolean值
@GetMapping("/login")
public boolean Login(@RequestParam String username,@RequestParam String password)//@RequestParam请求参数
{
password = DigestUtils.md5Hex(password);
Map<String,String> map=new HashMap<>();
map.put("username",username);
map.put("password",password);
return userservice.login(map);
}
}
写到这儿用postman模拟一下
先启动代码
端口号是:8001
然后打开postman
返回的是true,后端代码成功运行