基于javaweb+mysql的人脸识别登录系统(java+springboot+maven+mysql)
实现的功能有:
管理员后台录入人脸信息、前台用户登录时选择人脸识别方式登录。
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)相关推荐
- 基于javaweb+springboot的人脸识别登录系统(java+springboot+maven+mysql)
实现的功能有: 管理员后台录入人脸信息.前台用户登录时选择人脸识别方式登录. PS:用到了百度人脸识别的API接口,包括人脸检测.人脸识别对比等. 适用 课程设计,大作业,毕业设计,项目练习,学习演示 ...
- 基于javaweb的人脸识别登录系统(java+springboot+mysql)
基于javaweb的人脸识别登录系统(java+springboot+mysql) 运行环境 Java≥8.MySQL≥5.7 开发工具 eclipse/idea/myeclipse/sts等均可配置 ...
- 基于javaweb的校园外卖点餐系统(java+ssm+jsp+mysql)
基于javaweb的校园外卖点餐系统(java+ssm+jsp+mysql) 运行环境 Java≥8.MySQL≥5.7.Tomcat≥8 开发工具 eclipse/idea/myeclipse/st ...
- 基于javaweb+jsp的在线点餐系统(java+SSM+jsp+mysql+maven)
基于javaweb+jsp的在线点餐系统(java+SSM+jsp+mysql+maven) 一.项目简述 功能包括: 在线点餐,评论,购物车,下单,支付,管理员,店家多 商家管理,后台评论管理,订单 ...
- 基于javaweb的课程自动排课系统(java+springboot+html+layui+thymeleaf+redis+mysql)
基于javaweb的课程自动排课系统(java+springboot+html+layui+thymeleaf+redis+mysql) 运行环境 Java≥8.MySQL≥5.7 开发工具 ecli ...
- 基于javaweb的汉服文化bbs商城系统(java+springboot+thymeleaf+html+layui+bootstrap+mysql)
基于javaweb的汉服文化bbs商城系统(java+springboot+thymeleaf+html+layui+bootstrap+mysql) 运行环境 Java≥8.MySQL≥5.7 开发 ...
- 基于javaweb的医院分诊挂号住院管理系统(java+springboot+freemarker+mysql)
基于javaweb的医院分诊挂号住院管理系统(java+springboot+freemarker+mysql) 运行环境 Java≥8.MySQL≥5.7 开发工具 eclipse/idea/mye ...
- 基于javaweb的电影售票系统设计和实现(java+springboot+ssm+mysql+jsp)
基于javaweb的电影售票系统设计和实现(java+springboot+ssm+mysql+jsp) 运行环境 Java≥8.MySQL≥5.7 开发工具 eclipse/idea/myeclip ...
- 基于Javaweb实现的人脸识别考勤系统
人脸识别考勤系统使用说明书 此系统是人脸识别考勤系统的后台管理系统,考勤数据从人脸识别机器上获取,自动识别员工信息记录考勤.系统基于JSP/SERVLET 来开发实现,开发工具采用IDEA 或ECLI ...
最新文章
- P2261 [CQOI2007]余数求和
- Git的使用-将本地项目上传至Github/Github下载代码至本地-MAC
- leetcode算法题--圆圈中最后剩下的数字
- 计算机常用图像文件格式,常用的图像文件格式
- 汇编语言 修改显存 在屏幕上显示图案
- 【CF1200E】Compress Words【kmp】
- [css] 举例说明实现圆角的方式有哪些?
- fastclick.js移动端WEB开发,click,touch,tap事件浅析
- [医疗开发]医疗相关名词解析
- 懵了,Java枚举单例模式比DCL和静态单例要好???
- python自动化可以做什么菜_Python自动化开发学习之三级菜单制作
- 苹果ppt_“苹果美感中国学不来?”阿里、腾讯的设计师让你感受中国智造
- Word中 Visio 图片到 LaTeX PDF
- redis 集群 搭建(非哨兵)
- 思科三层+TPAC200+TP AP实现每个SSID独立网段
- NUKE 11 for mac版(电影特效合成软件) 11.3v4激活版详细安装步骤
- 计算机二级保存错地方,盘点考计算机二级那些容易出错的地方
- iOS:直播动态评论和点赞效果
- 计算机显卡(GPU)基础介绍
- LED驱动芯片TM1668驱动代码