Генератор Maple, использование генератора кода MyBatis-Plus
6. Единые соглашения об обработке исключений, результатах ответов и кодах состояния
Единые результаты ответа:
{
"body": {
"username": "admin"
},
"code": 200,
"message": "ok",
"now": "2017-04-06 15:42:20"
}
Единая обработка исключений
Глобальный класс бизнес-исключения ApplicationException содержит код состояния и информацию об ошибке. Все исключения в программе обрабатываются через AnnotationHandlerMethodExceptionResolver и преобразуются в единый ответ.
Не рекомендуется использовать логический тип для индикации, так как это может привести к неоднозначности. Лучше использовать согласованные коды состояния.
Соглашения о кодах состояния
За исключением случаев, когда проверка токена завершается неудачно с возвратом HTTP-кода состояния, все остальные исключения, ошибки и логические решения возвращаются с пользовательскими кодами состояния. В базовом модуле определены некоторые общие коды состояния, которые можно использовать напрямую. Однако другие модули не должны определять коды состояния в базовом модуле, то есть базовый модуль не отвечает за обработку бизнес-логики.
Каждый отдельный бизнес-модуль должен следовать спецификации StatusCode и определять свои собственные коды состояния в соответствии с ней. Например, в системном модуле SystemError.
Соглашение о кодах состояния для бизнес-модулей:
/* Формат кода ошибки (пример: 202001), 1 — системный уровень ошибки, 2 — ошибка бизнес-логики -------------------------------------------------------------------- Код ошибки уровня сервиса (1 — системный уровень) Код модуля (идентификатор бизнес-модуля) Конкретный код ошибки 2 02 001 -------------------------------------------------------------------- */ //2 00 001 означает: 00 — идентификатор системного модуля, 001 — конкретный код ошибки.
Разработчики должны следовать единым стандартам и соглашениям о том, как определять коды состояний для каждого модуля.
@ScienJus Проект основан на Redis и модифицирован для аутентификации и интеграции с этим проектом. https://github.com/ScienJus/spring-authorization-manager
@baomidou
Расширенные инструменты MyBatis, упрощающие операции CRUD. https://git.oschina.net/baomidou/mybatis-plus
Jquery EasyUI Insdep тема https://www.insdep.com
Для обсуждения технических вопросов.
Вы можете оставить комментарий после Вход в систему
Неприемлемый контент может быть отображен здесь и не будет показан на странице. Вы можете проверить и изменить его с помощью соответствующей функции редактирования.
Если вы подтверждаете, что содержание не содержит непристойной лексики/перенаправления на рекламу/насилия/вульгарной порнографии/нарушений/пиратства/ложного/незначительного или незаконного контента, связанного с национальными законами и предписаниями, вы можете нажать «Отправить» для подачи апелляции, и мы обработаем ее как можно скорее.
Комментарии ( 0 )