SpringBoot+Mysql做登陆接口,抛弃mapper.xml( 二 )


环境到这里就算完成了,接下来要写代码了6.编写代码实现登陆接口首先在 src main java 你的包 下 SpringBootDemoApplication 同级目录下创建 mapper controller entity 三个包 mapper 存储操作数据库的代码 controller 存储api的代码,前台调用的api都是这个下的 entity 存储数据库对应的实体类
首先是entity包下创建User实体类文件import lombok.Data;//@Data 注释会为我们自动给该实体类的属性添加 get set方法,必须引用了lombok包才可以使用@Datapublic class User {private int id;private String user;private String pass;}复制代码创建UserMapper,名称一般为数据库表名+Mapper,类型为interfaceimport org.Apache.ibatis.annotations.Mapper;import org.apache.ibatis.annotations.Select;import www.td0f7.cn.springboot01.spring_boot_demo.entity.User;//必须有这个注解,否则无法扫描到该mapper@Mapperpublic interface UserMapper {/*** @Select 代表查询语句* #{user} 代表 取该方法中 user参数* @返回值 登陆是查询,由于user登陆账号是唯一的,所有返回类型是一个User对象而不是集合*/@Select("select * from user where user = #{user} and pass = #{pass}")User login(String user, String pass);}复制代码创建UserController,给外部提供可调用的apiimport com.google.gson.Gson;import org.springframework.beans.factory.annotation.Autowired;import org.springframework.web.bind.annotation.PostMapping;import org.springframework.web.bind.annotation.RequestMapping;import org.springframework.web.bind.annotation.RequestParam;import org.springframework.web.bind.annotation.RestController;import www.td0f7.cn.springboot01.spring_boot_demo.entity.User;import www.td0f7.cn.springboot01.spring_boot_demo.mapper.UserMapper;@RestController//如果返回值为对象,则自动转换成json//@RequestMapping("user"),此注释代表这个controller需要+user才可以访问,如下//我们启动的网站都是http://localhost:8080,要访问这个controller则是http://localhost:8080/user@RequestMapping("user")public class UserController {@Autowired(required = false)//自动扫描mapper文件private UserMapper mapper;/*** 该接口为post方式** @param user 参数user默认值为空,不写defaultValue为null* @param pass* @return*/@PostMapping("login")public String login(@RequestParam(value = https://www.isolves.com/it/cxkf/kj/2021-03-08/"user", defaultValue = "") String user,@RequestParam(value = "pass", defaultValue = "") String pass) {if (user.equals("")) return "账号必传";if (pass.equals("")) return "密码必传";User user1 = mapper.login(user, pass);if (user1 == null) {//没有查询到数据,代表没有此账号return "账号密码不正确!";} else {return new Gson().toJson(user1);//登陆成功则给对象转json字符串返回}}}复制代码7.运行开始测试数据库添加数据INSERT INTO `user`(`user`, `pass`) VALUES ('wz', '123456')复制代码以上添加了账号 wz 密码 123456 的数据
接下来运行项目测试

SpringBoot+Mysql做登陆接口,抛弃mapper.xml

文章插图
 
使用postman测试
SpringBoot+Mysql做登陆接口,抛弃mapper.xml

文章插图
 

SpringBoot+Mysql做登陆接口,抛弃mapper.xml

文章插图
 

SpringBoot+Mysql做登陆接口,抛弃mapper.xml

文章插图
 

SpringBoot+Mysql做登陆接口,抛弃mapper.xml

文章插图
 
ok,登陆功能完成!!! 注册功能后期发布



推荐阅读