实现的功能有:
管理员后台录入人脸信息、前台用户登录时选择人脸识别方式登录。
PS:用到了百度人脸识别的API接口,包括人脸检测、人脸识别对比等。
适用
课程设计,大作业,毕业设计,项目练习,学习演示等
return Result.error(codeMsg);
}
//此处判断人脸可信度
JSONObject result = parseObject.getJSONObject("result");
if(result.getIntValue("face_num") > 1){
return Result.error(CodeMsg.ADMIN_USE_FACE_NUMBER_ERROR);
}
JSONArray faceList = result.getJSONArray("face_list");
JSONObject face = faceList.getJSONObject(0);
if(face.getFloatValue("face_probability") < 0.8){
return Result.error(CodeMsg.ADMIN_USE_FACE_PROB_LOW);
}
existUser.setFace(user.getFace());
//到这说明一切符合条件,进行数据库新增
if(userService.save(existUser) == null){
return Result.error(CodeMsg.ADMIN_USE_DELETE_ERROR);
}
operaterLogService.add("录入用户人脸信息");
return Result.success(true);
}
@RequestMapping("/system")
@Controller
public class SystemController {
return "admin/user/add_face"; } @RequestMapping(value="/add_face",method=RequestMethod.POST) @ResponseBody public ResultaddFace(User user){ //判断是否有人脸信息 if(StringUtils.isEmpty(user.getFace())){ return Result.error(CodeMsg.ADMIN_USE_ADD_FACE_ERROR); }
public Resultdelete(String ids){ if(!StringUtils.isEmpty(ids)){ String[] splitIds = ids.split(","); for(String id : splitIds){ operaterLogService.delete(Long.valueOf(id)); } } return Result.success(true); } @RequestMapping(value="/delete_all_operator_log",method=RequestMethod.POST) @ResponseBody public Result deleteAll(){ operaterLogService.deleteAll(); return Result.success(true); } } 后台用户管理控制器: @RequestMapping(value="/delete",method=RequestMethod.POST) @ResponseBody public Result delete(@RequestParam(name="id",required=true)Long id){ try { userService.delete(id); } catch (Exception e) { return Result.error(CodeMsg.ADMIN_USE_DELETE_ERROR); } operaterLogService.add("添加用户,用户ID:" + id); return Result.success(true); } } 后台角色管理控制器:
* @param model
* @return
*/
@RequestMapping(value="/add",method=RequestMethod.GET)
public String add(Model model){
List
*/
@RequestMapping(value="/add_face",method=RequestMethod.GET)
public String addFace(Model model,@RequestParam(name="id",required=true)Long id){
model.addAttribute("user", userService.find(id));
return "admin/user/add_face";
}
@RequestMapping(value="/add_face",method=RequestMethod.POST)
@ResponseBody
public Result addFace(User user){
//判断是否有人脸信息
return "admin/user/list";
}
@RequestMapping(value="/add",method=RequestMethod.GET)
public String add(Model model){
model.addAttribute("roles", roleService.findAll());
return "admin/user/add";
}
@RequestMapping(value="/add_face",method=RequestMethod.GET)
public String addFace(Model model,@RequestParam(name="id",required=true)Long id){
userService.save(loginedUser); //更新session SessionUtil.set(SessionConstant.SESSION_USER_LOGIN_KEY, loginedUser); return Result.success(true); } @RequestMapping(value="/operator_log_list") public String operatorLogList(Model model,OperaterLog operaterLog,PageBeanpageBean){ model.addAttribute("pageBean", operaterLogService.findList(operaterLog, pageBean)); model.addAttribute("operator", operaterLog.getOperator()); model.addAttribute("title", "日志列表"); return "admin/system/operator_log_list"; }



