public UserVO authenticate(UserVO userVO) throws LibraryManagementException {
		UserVO dbUserVO = null;
		if ("operator".equals(userVO.getUserType())) { // logic for operator login
			OperatorDAO operatorDAO = new OperatorDAO();
			dbUserVO = operatorDAO.getOperator(userVO);
			if (dbUserVO == null
					|| !(dbUserVO.getPassword().equals(userVO.getPassword()))) {
				throw new LibraryManagementException(
						ExceptionCategory.PASSWORD_INCORRECT);
			}
			return dbUserVO;
		} else { // logic for student login
			StudentDAO studentDAO = new StudentDAO();
			dbUserVO = studentDAO.getStudent(userVO);
			if (dbUserVO == null
					|| !(dbUserVO.getPassword().equals(userVO.getPassword()))) {
				throw new LibraryManagementException(
						ExceptionCategory.PASSWORD_INCORRECT);
			}
			return dbUserVO;
		}
	}