实现的功能有:
管理员后台录入人脸信息、前台用户登录时选择人脸识别方式登录。
PS:用到了百度人脸识别的API接口,包括人脸检测、人脸识别对比等。

适用

课程设计,大作业,毕业设计,项目练习,学习演示等

     if(user == null){return Result.error(CodeMsg.ADMIN_USERNAME_NO_EXIST);}if(StringUtils.isEmpty(user.getFace())){return Result.error(CodeMsg.ADMIN_USER_FACE_EMPTY);}//判断用户状态是否可用if(user.getStatus() == User.ADMIN_USER_STATUS_UNABLE){return Result.error(CodeMsg.ADMIN_USER_UNABLE);}//检查用户所属角色状态是否可用if(user.getRole() == null || user.getRole().getStatus() == Role.ADMIN_ROLE_STATUS_UNABLE){return Result.error(CodeMsg.ADMIN_USER_ROLE_UNABLE);}//检查用户所属角色的权限是否存在if(user.getRole().getAuthorities() == null || user.getRole().getAuthorities().size() == 0){return Result.error(CodeMsg.ADMIN_USER_ROLE_AUTHORITES_EMPTY);}//此处调用百度api接口对比两张人脸相似度String faceMatch = BaiduApi.faceMatch(user.getFace(), face);log.info(faceMatch);JSONObject parseObject = JSONObject.parseObject(faceMatch);if(parseObject.getIntValue("error_code") != 0){CodeMsg codeMsg = CodeMsg.DATA_ERROR;codeMsg.setMsg(parseObject.getString("error_msg"));return Result.error(codeMsg);}
 private OperaterLogService operaterLogService;@Autowiredprivate RoleService roleService;/*** 分页搜索角色列表* @param model* @param role* @param pageBean* @return*/@RequestMapping(value="/list")public String list(Model model,Role role,PageBean<Role> pageBean){model.addAttribute("title", "角色列表");model.addAttribute("name", role.getName());model.addAttribute("pageBean", roleService.findByName(role, pageBean));return "admin/role/list";}/*** 角色添加页面
  */@RequestMapping(value="delete",method=RequestMethod.POST)@ResponseBodypublic Result<Boolean> delete(@RequestParam(name="id",required=true)Long id){try {roleService.delete(id);} catch (Exception e) {// TODO: handle exceptionreturn Result.error(CodeMsg.ADMIN_ROLE_DELETE_ERROR);}log.info("编辑角色ID【"+id+"】");operaterLogService.add("删除角色ID【"+id+"】");return Result.success(true);}
}
系统控制器:
/*** 系统控制器* @author yy**/
@RequestMapping("/system")
@Controller
public class SystemController {
     return "admin/role/edit";}/*** 角色修改表单提交处理* @param request* @param role* @return*/@RequestMapping(value="/edit",method=RequestMethod.POST)@ResponseBodypublic Result<Boolean> edit(Role role){//用统一验证实体方法验证是否合法CodeMsg validate = ValidateEntityUtil.validate(role);if(validate.getCode() != CodeMsg.SUCCESS.getCode()){
 @RequestMapping(value="/list")public String list(Model model,Role role,PageBean<Role> pageBean){model.addAttribute("title", "角色列表");model.addAttribute("name", role.getName());model.addAttribute("pageBean", roleService.findByName(role, pageBean));return "admin/role/list";}/*** 角色添加页面* @param model* @return*/@RequestMapping(value="/add",method=RequestMethod.GET)public String add(Model model){List<Menu> findAll = menuService.findAll();model.addAttribute("topMenus",MenuUtil.getTopMenus(findAll));model.addAttribute("secondMenus",MenuUtil.getSecondMenus(findAll));model.addAttribute("thirdMenus",MenuUtil.getThirdMenus(findAll));return "admin/role/add";}
 private MenuService menuService;@Autowiredprivate OperaterLogService operaterLogService;@Autowiredprivate RoleService roleService;/*** 分页搜索角色列表* @param model* @param role* @param pageBean
 /*** 无权限提示页面* @return*/@RequestMapping(value="/no_right")public String noRight(){return "admin/system/no_right";}/*** 修改用户个人信息* @return*/@RequestMapping(value="/update_userinfo",method=RequestMethod.GET)public String updateUserInfo(){return "admin/system/update_userinfo";}
 /*** 新增用户页面* @param model* @return*/@RequestMapping(value="/add",method=RequestMethod.GET)public String add(Model model){model.addAttribute("roles", roleService.findAll());return "admin/user/add";}/*** 录入人脸信息
     }//表示session未失效,进一步判断用户填写的验证码是否正确if(!cpacha.equalsIgnoreCase(attribute.toString())){return Result.error(CodeMsg.CPACHA_ERROR);}//表示验证码正确,开始查询数据库,检验密码是否正确User findByUsername = userService.findByUsername(user.getUsername());//判断是否为空if(findByUsername == null){return Result.error(CodeMsg.ADMIN_USERNAME_NO_EXIST);}//表示用户存在,进一步对比密码是否正确if(!findByUsername.getPassword().equals(user.getPassword())){return Result.error(CodeMsg.ADMIN_PASSWORD_ERROR);}//表示密码正确,接下来判断用户状态是否可用if(findByUsername.getStatus() == User.ADMIN_USER_STATUS_UNABLE){return Result.error(CodeMsg.ADMIN_USER_UNABLE);}//检查用户所属角色状态是否可用if(findByUsername.getRole() == null || findByUsername.getRole().getStatus() == Role.ADMIN_ROLE_STATUS_UNABLE){return Result.error(CodeMsg.ADMIN_USER_ROLE_UNABLE);}//检查用户所属角色的权限是否存在if(findByUsername.getRole().getAuthorities() == null || findByUsername.getRole().getAuthorities().size() == 0){return Result.error(CodeMsg.ADMIN_USER_ROLE_AUTHORITES_EMPTY);
 @Autowiredprivate UserService userService;@Autowiredprivate DatabaseBakService databaseBakService;private Logger log = LoggerFactory.getLogger(SystemController.class);/*** 登录页面* @param name* @param model* @return*/@RequestMapping(value="/login",method=RequestMethod.GET)public String login(Model model){return "admin/system/login";}/*** 用户登录提交表单处理方法* @param request

基于javaweb+mysql的人脸识别登录系统(java+springboot+maven+mysql)相关推荐

  1. 基于javaweb+springboot的人脸识别登录系统(java+springboot+maven+mysql)

    实现的功能有: 管理员后台录入人脸信息.前台用户登录时选择人脸识别方式登录. PS:用到了百度人脸识别的API接口,包括人脸检测.人脸识别对比等. 适用 课程设计,大作业,毕业设计,项目练习,学习演示 ...

  2. 基于javaweb的人脸识别登录系统(java+springboot+mysql)

    基于javaweb的人脸识别登录系统(java+springboot+mysql) 运行环境 Java≥8.MySQL≥5.7 开发工具 eclipse/idea/myeclipse/sts等均可配置 ...

  3. 基于javaweb的校园外卖点餐系统(java+ssm+jsp+mysql)

    基于javaweb的校园外卖点餐系统(java+ssm+jsp+mysql) 运行环境 Java≥8.MySQL≥5.7.Tomcat≥8 开发工具 eclipse/idea/myeclipse/st ...

  4. 基于javaweb+jsp的在线点餐系统(java+SSM+jsp+mysql+maven)

    基于javaweb+jsp的在线点餐系统(java+SSM+jsp+mysql+maven) 一.项目简述 功能包括: 在线点餐,评论,购物车,下单,支付,管理员,店家多 商家管理,后台评论管理,订单 ...

  5. 基于javaweb的课程自动排课系统(java+springboot+html+layui+thymeleaf+redis+mysql)

    基于javaweb的课程自动排课系统(java+springboot+html+layui+thymeleaf+redis+mysql) 运行环境 Java≥8.MySQL≥5.7 开发工具 ecli ...

  6. 基于javaweb的汉服文化bbs商城系统(java+springboot+thymeleaf+html+layui+bootstrap+mysql)

    基于javaweb的汉服文化bbs商城系统(java+springboot+thymeleaf+html+layui+bootstrap+mysql) 运行环境 Java≥8.MySQL≥5.7 开发 ...

  7. 基于javaweb的医院分诊挂号住院管理系统(java+springboot+freemarker+mysql)

    基于javaweb的医院分诊挂号住院管理系统(java+springboot+freemarker+mysql) 运行环境 Java≥8.MySQL≥5.7 开发工具 eclipse/idea/mye ...

  8. 基于javaweb的电影售票系统设计和实现(java+springboot+ssm+mysql+jsp)

    基于javaweb的电影售票系统设计和实现(java+springboot+ssm+mysql+jsp) 运行环境 Java≥8.MySQL≥5.7 开发工具 eclipse/idea/myeclip ...

  9. 基于Javaweb实现的人脸识别考勤系统

    人脸识别考勤系统使用说明书 此系统是人脸识别考勤系统的后台管理系统,考勤数据从人脸识别机器上获取,自动识别员工信息记录考勤.系统基于JSP/SERVLET 来开发实现,开发工具采用IDEA 或ECLI ...

最新文章

  1. P2261 [CQOI2007]余数求和
  2. Git的使用-将本地项目上传至Github/Github下载代码至本地-MAC
  3. leetcode算法题--圆圈中最后剩下的数字
  4. 计算机常用图像文件格式,常用的图像文件格式
  5. 汇编语言 修改显存 在屏幕上显示图案
  6. 【CF1200E】Compress Words【kmp】
  7. [css] 举例说明实现圆角的方式有哪些?
  8. fastclick.js移动端WEB开发,click,touch,tap事件浅析
  9. [医疗开发]医疗相关名词解析
  10. 懵了,Java枚举单例模式比DCL和静态单例要好???
  11. python自动化可以做什么菜_Python自动化开发学习之三级菜单制作
  12. 苹果ppt_“苹果美感中国学不来?”阿里、腾讯的设计师让你感受中国智造
  13. Word中 Visio 图片到 LaTeX PDF
  14. redis 集群 搭建(非哨兵)
  15. 思科三层+TPAC200+TP AP实现每个SSID独立网段
  16. NUKE 11 for mac版(电影特效合成软件) 11.3v4激活版详细安装步骤
  17. 计算机二级保存错地方,盘点考计算机二级那些容易出错的地方
  18. iOS:直播动态评论和点赞效果
  19. 计算机显卡(GPU)基础介绍
  20. LED驱动芯片TM1668驱动代码

热门文章

  1. 腾讯申请“全民电竞”等商标!相关域名又在何处?
  2. RUP(Rational Unified Process)说明与模板(中文、英文)
  3. html卡通人物爱心表白,CSS3 会爱心表白的卡通肖像
  4. 【EasyExcel】的一些用法
  5. Linux命令之fuser命令
  6. 跨境电商独立站如何推广?
  7. Word公式显示错误
  8. 京东实时数据产品应用实践
  9. [JZOJ5641] 林克卡特树【树形DP】【凸优化】
  10. GD替换ST的芯片出现的运行速度慢的问题