Как извлечь строку запроса sql из файла журнала, используя Java? - PullRequest
0 голосов
/ 05 сентября 2018

Я сохранил данные файла журнала в строке.

файл журнала Данные:

testOut_Log: START RequestId: 13b73ed9-b101-11e8-8619-91946b18fd8a Version: $LATEST
2018-09-05 11:44:41 <13b73ed9-b101-11e8-8619-91946b18fd8a> INFO  UpcDaoImpl:QUERY : SELECT apn, epc, rpc_fmt_cd FROM tbl_data WHERE apn= '43781661' OR apn= '63535011' OR apn= '19870' OR apn = '1023313'
2018-09-05 11:44:42 <13b73ed9-b101-11e8-8619-91946b18fd8a> INFO  addpcDaoImpl:RPT 

Требуется только запрос:

SELECT apn, epc, rpc_fmt_cd FROM tbl_data WHERE apn= '43781661' OR apn= '63535011' OR apn= '19870' OR apn = '1023313'

Код, который я пробовал:

String myQuery = testOutput_Log.substring (testOutput_Log.indexOf ("QUERY:")); System.out.println (myQuery);

Выход: myQuery:

ЗАПРОС: ВЫБЕРИТЕ apn, epc, rpc_fmt_cd ОТ tbl_data ГДЕ apn = '43781661' ИЛИ ​​apn = '63535011' ИЛИ ​​apn = '19870' ИЛИ ​​apn = '1023313' 2018-09-05 14:43:51 <1b214074-b11a-11e8-af80-d5e640140a71> ИНФОРМАЦИЯ aaaapcDaoImpl: RPT

1 Ответ

0 голосов
/ 07 сентября 2018

Ниже код работает для меня:

String myQuery = testOutput_Log.substring (testOutput_Log.indexOf ("QUERY:")); System.out.println ("myQuery: \ n" + myQuery); String myQuery2 = myQuery.substring (myQuery.indexOf ("SELECT"), myQuery.indexOf ("\ n")); System.out.println ("myQuery2: \ n" + myQuery2);

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...