From 8528272d1c57b522b5fd05d78682b395e4db3c6d Mon Sep 17 00:00:00 2001 From: chenlw <874313221@qq.com> Date: Sat, 8 Oct 2016 17:13:10 +0800 Subject: [PATCH] =?UTF-8?q?oracleExtract=E6=96=B9=E6=B3=95,=E6=8A=BD?= =?UTF-8?q?=E5=8F=96oracle,5=E7=A7=92=E5=86=85=E8=BF=94=E5=9B=9E=EF=BC=88?= =?UTF-8?q?=E7=BA=BF=E7=A8=8B=E6=8A=BD=E5=8F=96=EF=BC=89?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/DataModelController.java | 31 ++++++++++++++++--- 1 file changed, 27 insertions(+), 4 deletions(-) diff --git a/src/com/platform/controller/DataModelController.java b/src/com/platform/controller/DataModelController.java index b2fb8c58..05486252 100644 --- a/src/com/platform/controller/DataModelController.java +++ b/src/com/platform/controller/DataModelController.java @@ -38,6 +38,8 @@ import com.platform.service.IMoveDataService; import com.platform.service.IMySqlService; import com.platform.service.IOracleExtractService; import com.platform.service.OracleStatusService; +import com.platform.service.thread.ThreadExtractOracle; +import com.platform.service.thread.ThreadGainOracleConnect; import com.platform.utils.Configs; import com.platform.utils.UtilsHelper; @@ -142,12 +144,33 @@ public class DataModelController extends BaseController { public void oracleExtract(HttpServletRequest res, HttpServletResponse req, @RequestBody oracleForm form) throws Exception { Configs.CONSOLE_LOGGER.error("/oracle/{name}/extract"); - res.setCharacterEncoding("UTF-8"); +// res.setCharacterEncoding("UTF-8"); + boolean isConnect = false; + //5秒内是否能获得oracle连接,否则认为超时。 + if (null != form.getTarget()) { + ThreadGainOracleConnect thOrcl = new ThreadGainOracleConnect(form, OracleExtract); + thOrcl.start(); + for (int i = 0; i < 10; i++) { + isConnect = thOrcl.isConnect(); + if (isConnect) { + break; + } + else { + Thread.sleep(500); + } + } + } + if (isConnect) + req.setStatus(200); + else + req.setStatus(500); + // 开始抽取数据到汇总库 if (null != form.getInneed() && form.getInneed().size() > 0) { - OracleExtract.extractOracle(form.getName(), form.getInneed(), - form.getTarget()); + ThreadExtractOracle thExtra = new ThreadExtractOracle(form, OracleExtract); + thExtra.start(); +// OracleExtract.extractOracle(form.getName(), form.getInneed(), +// form.getTarget()); } - req.setStatus(200); } // public void oracleExtract(HttpServletRequest res,