Как зарегистрировать входящий запрос в spring MVC

У меня есть тело запроса JSON, подобное этому

{  
   "3DSecure":{  
      "paRes":"xxxxxxxxxxxxxxxxxxxxxxx"
   }
}

Я разработал конечную точку для регистрации этого запроса.

@RequestMapping(value = "/logging/requests", method = RequestMethod.POST)
@ResponseBody
public String loggingIncomingRequest(@RequestBody AxiPayCargilsRequest request,
                                         HttpServletRequest servletRequest,
                                         ServiceContext serviceContext){

    log.info("!--REQUEST START--!"+request);

    log.info("");
    return null;
}

Как зарегистрировать этот запрос, может ли кто-нибудь помочь мне с уровня создания объекта Спасибо.

это зависит от того, где вы хотите войти

harkesh kumar 22.05.2019 08:43
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
Как вычислять биты и понимать побитовые операторы в Java - объяснение с примерами
Как вычислять биты и понимать побитовые операторы в Java - объяснение с примерами
В компьютерном программировании биты играют важнейшую роль в представлении и манипулировании данными на двоичном уровне. Побитовые операции...
Поднятие тревоги для долго выполняющихся методов в Spring Boot
Поднятие тревоги для долго выполняющихся методов в Spring Boot
Приходилось ли вам сталкиваться с требованиями, в которых вас могли попросить поднять тревогу или выдать ошибку, когда метод Java занимает больше...
Полный курс Java для разработчиков веб-сайтов и приложений
Полный курс Java для разработчиков веб-сайтов и приложений
Получите сертификат Java Web и Application Developer, используя наш курс.
1
1
70
2
Перейти к ответу Данный вопрос помечен как решенный

Ответы 2

Ответ принят как подходящий

Во-первых, добавьте следующие зависимости в ваш pom.xml

<dependency>
    <groupId>org.apache.logging.log4j</groupId>
    <artifactId>log4j-api</artifactId>
    <version>2.11.2</version>
  </dependency>
  <dependency>
    <groupId>org.apache.logging.log4j</groupId>
    <artifactId>log4j-core</artifactId>
    <version>2.11.2</version>
  </dependency>

а затем инициализируйте регистратор во всех ваших классах, где требуется ведение журнала, например,

private final static Logger logger  = LogManager.getFormatterLogger(YourClassName.class);

Теперь вы можете использовать регистратор, например,

logger.info("Your Logging info");

Используя фильтры, вы можете отсортировать все запросы, поступающие в приложение.

    @Component
    public class SimpleRequestFilter implements Filter {

        private final Logger log = LoggerFactory.getLogger(SimpleCORSFilter.class);

        public SimpleCORSFilter() {
            log.info("SimpleCORSFilter init");
        }

        @Override
        public void doFilter(ServletRequest req, ServletResponse res, FilterChain chain)
                throws IOException, ServletException {

            // HttpServletRequest request = (HttpServletRequest) req;
            HttpServletResponse response = (HttpServletResponse) res;
            log.info("Request URI: " + request.getRequestURI());
            // Similarily, you can log others properties as required.

            chain.doFilter(req, res);
        }

        @Override
        public void init(FilterConfig filterConfig) {
        }

        @Override
        public void destroy() {
        }

    }

Если вы хотите зарегистрировать только указанный запрос API, вы можете следовать ответу @Chirag Shah.

Другие вопросы по теме