packagecom.my.logindemo.service.servicelmpl;importcom.my.logindemo.service.UserService;importcom.my.logindemo.domain.User;importcom.my.logindemo.repository.UserDao;importorg.springframework.stereotype.Service;importjakarta.annotation.Resource;@ServicepublicclassUserServicelmplimplementsUserService{@ResourceprivateUserDao userDao;@OverridepublicUserloginService(String uname,String password){User user = userDao.findByUnameAndPassword(uname, password);// 重要信息置空if(user !=null){user.setPassword("");}return user;}@OverridepublicUserregistService(User user){//当新用户的用户名已存在时if(userDao.findByUname(user.getUname())!=null){// 无法注册returnnull;}else{// 插入用户到数据库int result = userDao.insertUser(user);if(result >0){//返回创建好的用户对象user.setPassword("");return user;}else{returnnull;}}}}
七、自定义工具类
自定义一个信息回复
packagecom.my.logindemo.utils;publicclassResult<T>{privateString code;privateString msg;privateT data;publicStringgetCode(){return code;}publicvoidsetCode(String code){this.code = code;}publicStringgetMsg(){return msg;}publicvoidsetMsg(String msg){this.msg = msg;}publicTgetData(){return data;}publicvoidsetData(T data){this.data = data;}publicResult(){}publicResult(T data){this.data = data;}publicstaticResultsuccess(){Result result =newResult<>();result.setCode("200");result.setMsg("成功");return result;}publicstatic<T>Result<T>success(T data){Result<T> result =newResult<>(data);result.setCode("200");result.setMsg("成功");return result;}publicstatic<T>Result<T>success(T data,String msg){Result<T> result =newResult<>(data);result.setCode("200");result.setMsg(msg);return result;}publicstaticResulterror(String code,String msg){Result result =newResult();result.setCode(code);result.setMsg(msg);return result;}}
八、实现controller层
packagecom.my.logindemo.controller;importcom.my.logindemo.domain.User;importcom.my.logindemo.service.UserService;importcom.my.logindemo.utils.Result;importorg.springframework.web.bind.annotation.*;importjakarta.annotation.Resource;@RestControllerpublicclassUserController{@ResourceprivateUserService userService;@PostMapping("/login")publicResult<User>loginController(@RequestBodyUser newUser){User user = userService.loginService(newUser.getUname(),newUser.getPassword());if(user!=null){returnResult.success(user,"登录成功!");}else{returnResult.error("403","账号或密码错误!");}}@PostMapping("/register")publicResult<User>registController(@RequestBodyUser newUser){User user = userService.registService(newUser);if(user!=null){returnResult.success(user,"注册成功!");}else{returnResult.error("403","用户名已存在!");}}}