فهرست منبع

git-svn-id: https://192.168.57.71/svn/jsgkj@328 931142cf-59ea-a443-aa0e-51397b428577

xt_yuanxd 9 سال پیش
والد
کامیت
59835323dc
34فایلهای تغییر یافته به همراه5 افزوده شده و 2552 حذف شده
  1. 5 0
      xtdsp/trunk/pom.xml
  2. 0 129
      xtdsp/trunk/src/main/java/com/xt/dsp/bean/TaskCacheBean.java
  3. 0 42
      xtdsp/trunk/src/main/java/com/xt/dsp/controller/TaskCtl.java
  4. 0 156
      xtdsp/trunk/src/main/java/com/xt/dsp/jdbc/JDBCTools.java
  5. 0 25
      xtdsp/trunk/src/main/java/com/xt/dsp/jdbc/JdbcTemplateUtils.java
  6. 0 57
      xtdsp/trunk/src/main/java/com/xt/dsp/job/CommonJobListener.java
  7. 0 71
      xtdsp/trunk/src/main/java/com/xt/dsp/job/SqlSynJob.java
  8. 0 7
      xtdsp/trunk/src/main/java/com/xt/dsp/mappers/DataSourceBeanMapper.java
  9. 0 7
      xtdsp/trunk/src/main/java/com/xt/dsp/mappers/JobBeanMapper.java
  10. 0 13
      xtdsp/trunk/src/main/java/com/xt/dsp/mappers/TaskBeanMapper.java
  11. 0 15
      xtdsp/trunk/src/main/java/com/xt/dsp/mappers/TaskSqlBeanMapper.java
  12. 0 192
      xtdsp/trunk/src/main/java/com/xt/dsp/model/DataSourceBean.java
  13. 0 138
      xtdsp/trunk/src/main/java/com/xt/dsp/model/JobBean.java
  14. 0 86
      xtdsp/trunk/src/main/java/com/xt/dsp/model/TaskBean.java
  15. 0 109
      xtdsp/trunk/src/main/java/com/xt/dsp/model/TaskSqlBean.java
  16. 0 11
      xtdsp/trunk/src/main/java/com/xt/dsp/service/CacheBeanService.java
  17. 0 7
      xtdsp/trunk/src/main/java/com/xt/dsp/service/DataSourceService.java
  18. 0 75
      xtdsp/trunk/src/main/java/com/xt/dsp/service/JobService.java
  19. 0 19
      xtdsp/trunk/src/main/java/com/xt/dsp/service/TaskRun.java
  20. 0 37
      xtdsp/trunk/src/main/java/com/xt/dsp/service/TaskService.java
  21. 0 14
      xtdsp/trunk/src/main/java/com/xt/dsp/service/TaskSqlService.java
  22. 0 87
      xtdsp/trunk/src/main/java/com/xt/dsp/serviceImpl/CacheBeanServiceImpl.java
  23. 0 20
      xtdsp/trunk/src/main/java/com/xt/dsp/serviceImpl/DataSourceServiceImpl.java
  24. 0 171
      xtdsp/trunk/src/main/java/com/xt/dsp/serviceImpl/JobInfoServiceImpl.java
  25. 0 39
      xtdsp/trunk/src/main/java/com/xt/dsp/serviceImpl/TaskServiceImpl.java
  26. 0 453
      xtdsp/trunk/src/main/java/com/xt/dsp/serviceImpl/TaskSqlServiceImpl.java
  27. 0 57
      xtdsp/trunk/src/main/java/com/xt/dsp/system/BaseMapper.java
  28. 0 192
      xtdsp/trunk/src/main/java/com/xt/dsp/system/DataSourceFactory.java
  29. 0 49
      xtdsp/trunk/src/main/java/com/xt/dsp/system/InitServlet.java
  30. 0 68
      xtdsp/trunk/src/main/resources/com/xt/dsp/mappers/DataSourceBeanMapper.xml
  31. 0 60
      xtdsp/trunk/src/main/resources/com/xt/dsp/mappers/JobBeanMapper.xml
  32. 0 52
      xtdsp/trunk/src/main/resources/com/xt/dsp/mappers/TaskBeanMapper.xml
  33. 0 61
      xtdsp/trunk/src/main/resources/com/xt/dsp/mappers/TaskSqlBeanMapper.xml
  34. 0 33
      xtdsp/trunk/src/main/resources/generatorConfig.xml

+ 5 - 0
xtdsp/trunk/pom.xml

@@ -128,6 +128,11 @@
 			<artifactId>x-tools-io</artifactId>
 			<version>1.0-SNAPSHOT</version>
 		</dependency>
+		<dependency>
+			<groupId>com.xt</groupId>
+			<artifactId>xtdsp-core</artifactId>
+			<version>0.0.1-SNAPSHOT</version>
+		</dependency>
 	</dependencies>
 	<build>
 		<!-- 插件配置 -->

+ 0 - 129
xtdsp/trunk/src/main/java/com/xt/dsp/bean/TaskCacheBean.java

@@ -1,129 +0,0 @@
-package com.xt.dsp.bean;
-
-import java.io.File;
-
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-import org.springframework.util.StringUtils;
-
-import com.alibaba.fastjson.JSONObject;
-
-/**
- * 任务缓存实例
- * 
- * @author yuanxd
- *
- */
-public class TaskCacheBean implements Comparable<TaskCacheBean> {
-	private final Logger log = LoggerFactory.getLogger(TaskCacheBean.class);
-	private String cacheFolder;
-	private String subFolder;
-	private JSONObject cacheData;
-	private String fileName;
-	private long timeMillis;
-	private long num = 0;
-	private String taskId;
-
-	@Override
-	public int compareTo(TaskCacheBean o) {
-		int t = Long.compare(this.timeMillis, o.timeMillis);
-		if (t == 0) {
-			t = Long.compare(this.num, o.num);
-		}
-		return t;
-	}
-
-	public JSONObject getCacheData() {
-		return cacheData;
-	}
-
-	public String getCacheFolder() {
-		return cacheFolder;
-	}
-
-	public String getFileName() {
-		return fileName;
-	}
-
-	public String getSubFolder() {
-		return subFolder;
-	}
-
-	public String getTaskId() {
-		return taskId;
-	}
-
-	/**
-	 * 设置可用缓存目录
-	 * 
-	 * @param folder
-	 * @return
-	 */
-	public int setAvalidCacheFolder(String folder) {
-		File cachefolder = null;
-		if (StringUtils.hasText(folder)) {
-			cachefolder = new File(folder);
-			if (!cachefolder.exists()) {
-				try {
-					boolean ctFolder = cachefolder.mkdirs();
-					if (ctFolder && cachefolder.canRead() && cachefolder.canWrite()) {
-						this.cacheFolder = folder;
-					}
-				} catch (Exception e) {
-
-				}
-			} else {
-				if (cachefolder.isDirectory() && cachefolder.canWrite() && cachefolder.canRead()) {
-					this.cacheFolder = folder;
-				}
-			}
-		}
-		if (StringUtils.isEmpty(this.cacheFolder)) {
-			File f = new File("");
-			if (f.isDirectory() && f.canRead() && f.canWrite()) {
-				this.cacheFolder = "";
-			} else {
-				log.error("设置缓存目录{}异常,将使用默认目录缓存!", folder);
-				return -1;
-			}
-		}
-		return 0;
-	}
-
-	public void setCacheData(JSONObject cacheData) {
-		this.cacheData = cacheData;
-	}
-
-	public void setCacheFolder(String cacheFolder) {
-		this.cacheFolder = cacheFolder;
-	}
-
-	public void setFileName(String fileName) {
-		this.fileName = fileName;
-		if (fileName != null && fileName.length() > 0) {
-			String[] props = fileName.split("-");
-			if (props.length > 0) {
-				this.taskId = props[0];
-			}
-			if (props.length > 1) {
-				this.timeMillis = Long.parseLong(props[1]);
-			}
-			if (props.length > 2) {
-				this.num = Long.parseLong(props[2]);
-			}
-		}
-	}
-
-	public void setSubFolder(String subFolder) {
-		this.subFolder = subFolder;
-	}
-
-	public void setTaskId(String taskId) {
-		this.taskId = taskId;
-	}
-
-	@Override
-	public String toString() {
-		return "TaskCacheBean [fileName=" + fileName + "]";
-	}
-}

+ 0 - 42
xtdsp/trunk/src/main/java/com/xt/dsp/controller/TaskCtl.java

@@ -1,42 +0,0 @@
-package com.xt.dsp.controller;
-
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.stereotype.Controller;
-import org.springframework.web.bind.annotation.PathVariable;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.ResponseBody;
-
-import com.xt.dsp.model.TaskBean;
-import com.xt.dsp.service.TaskService;
-import com.xt.dsp.service.TaskSqlService;
-import com.yuanxd.tools.io.http.JsonResult;
-
-@Controller
-@RequestMapping("task")
-public class TaskCtl {
-	@Autowired
-	private TaskService taskService;
-	@Autowired
-	private TaskSqlService taskSqlService;
-
-	@RequestMapping("run/{code}")
-	@ResponseBody
-	public JsonResult runTask(@PathVariable String code, String condition) {
-		TaskBean task = taskService.selectByCode(code);
-		JsonResult result = new JsonResult();
-		if (task == null) {
-			result.setSuccess(false);
-			result.setMessage("任务不存在:" + code);
-		}
-
-		if (TaskBean.TYPE_SQL.equals(task.getType())) {
-			int res = taskSqlService.runTask(task, condition);
-			if (res == 0) {
-				result.setSuccess(true);
-				return result;
-			}
-		}
-		result.setSuccess(false);
-		return result;
-	}
-}

+ 0 - 156
xtdsp/trunk/src/main/java/com/xt/dsp/jdbc/JDBCTools.java

@@ -1,156 +0,0 @@
-package com.xt.dsp.jdbc;
-
-import java.sql.Connection;
-import java.sql.DriverManager;
-import java.sql.PreparedStatement;
-import java.sql.ResultSet;
-import java.sql.SQLException;
-import java.sql.Statement;
-
-import com.alibaba.fastjson.JSONObject;
-
-public class JDBCTools {
-	private Connection conn;
-	private Statement statement;
-	private PreparedStatement ps;
-	private ResultSet rs;
-	private String driver = null;
-	private String url = null;
-	private String username = null;
-	private String password = null;
-
-	public JDBCTools(JSONObject connJson) {
-		this.driver = connJson.getString("driver");
-		this.url = connJson.getString("url");
-		this.username = connJson.getString("username");
-		this.password = connJson.getString("password");
-	}
-
-	public Connection getConnection() throws ClassNotFoundException, SQLException {
-		Class.forName(this.driver);
-		return conn = DriverManager.getConnection(url, username, password);
-	}
-
-	public void update(String sql, String condition) {
-		try {
-			conn = getConnection();
-			ps = (PreparedStatement) conn.prepareStatement(sql);
-			ps.setString(1, condition);
-			ps.executeUpdate(sql);
-		} catch (SQLException e) {
-			e.printStackTrace();
-		} catch (ClassNotFoundException e) {
-			e.printStackTrace();
-		} finally {
-			releaseDB(conn, statement);
-		}
-	}
-
-	public void update1(String sql) {
-		try {
-			statement = (Statement) getConnection().createStatement();
-			statement.executeUpdate(sql);
-		} catch (SQLException e) {
-			e.printStackTrace();
-		} catch (ClassNotFoundException e) {
-			// TODO Auto-generated catch block
-			e.printStackTrace();
-		} finally {
-			releaseDB(conn, statement);
-
-		}
-	}
-
-	public void testUpdete1() {
-		String sql1 = "DELETE FROM Users WHERE userName='RORO'";
-		update1(sql1);
-	}
-
-	public void releaseDB(Connection conn, Statement statement) {
-		if (statement != null) {
-			try {
-				statement.close();
-			} catch (SQLException e) {
-				e.printStackTrace();
-			}
-		}
-
-		if (conn != null) {
-			try {
-				conn.close();
-			} catch (SQLException e) {
-				e.printStackTrace();
-			}
-		}
-	}
-
-	public void releaseDB(Connection conn, PreparedStatement ps) {
-		if (ps != null) {
-			try {
-				ps.close();
-			} catch (SQLException e) {
-				e.printStackTrace();
-			}
-		}
-
-		if (conn != null) {
-			try {
-				conn.close();
-			} catch (SQLException e) {
-				e.printStackTrace();
-			}
-		}
-	}
-
-	public void releaseDB() {
-		if (ps != null) {
-			try {
-				ps.close();
-			} catch (Exception e) {
-			}
-		}
-
-		if (rs != null) {
-			try {
-				rs.close();
-			} catch (Exception e) {
-			}
-		}
-
-		if (conn != null) {
-			try {
-				conn.close();
-			} catch (Exception e) {
-			}
-		}
-	}
-
-	public ResultSet getResultSet(String sql) {
-		try {
-			conn = getConnection();
-			statement = (Statement) conn.createStatement();
-			rs = statement.executeQuery(sql);
-		} catch (SQLException e) {
-			e.printStackTrace();
-		} catch (ClassNotFoundException e) {
-			e.printStackTrace();
-		}
-		return rs;
-	}
-
-	public ResultSet getPreResultSet(String sql, String condition) {
-		try {
-			conn = getConnection();
-			ps = (PreparedStatement) conn.prepareStatement(sql);
-			ps.setString(1, condition);
-			rs = ps.executeQuery();
-
-		} catch (SQLException e) {
-			e.printStackTrace();
-		} catch (ClassNotFoundException e) {
-			e.printStackTrace();
-		}
-		return rs;
-
-	}
-}

+ 0 - 25
xtdsp/trunk/src/main/java/com/xt/dsp/jdbc/JdbcTemplateUtils.java

@@ -1,25 +0,0 @@
-package com.xt.dsp.jdbc;
-
-import javax.sql.DataSource;
-
-import org.springframework.jdbc.core.JdbcTemplate;
-
-import com.xt.dsp.model.DataSourceBean;
-import com.xt.dsp.system.DataSourceFactory;
-
-public class JdbcTemplateUtils {
-	public static JdbcTemplate getJdbcTemplate(DataSourceBean dsb) {
-		DataSourceFactory dsf = new DataSourceFactory();
-		dsf.setDsid(dsb.getId());
-		dsf.afterPropertiesSet(dsb.toProperties());
-		dsf.init();
-		JdbcTemplate template = null;
-		try {
-			DataSource ds = dsf.getObject();
-			template = new JdbcTemplate(ds);
-		} catch (Exception e) {
-			e.printStackTrace();
-		}
-		return template;
-	}
-}

+ 0 - 57
xtdsp/trunk/src/main/java/com/xt/dsp/job/CommonJobListener.java

@@ -1,57 +0,0 @@
-package com.xt.dsp.job;
-
-import java.util.Date;
-
-import org.quartz.JobExecutionContext;
-import org.quartz.JobExecutionException;
-import org.quartz.JobListener;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.stereotype.Component;
-
-import com.xt.dsp.model.JobBean;
-import com.xt.dsp.service.JobService;
-
-@Component
-public class CommonJobListener implements JobListener {
-	private final Logger log = LoggerFactory.getLogger(getClass());
-	@Autowired
-	private JobService jobService = null;
-
-	@Override
-	public String getName() {
-		return CommonJobListener.class.getSimpleName();
-	}
-
-	private JobBean getJobInfoFromContext(JobExecutionContext context) {
-		String jobid = context.getJobDetail().getJobDataMap().getString(JobService.PARAM_JOB);
-		return jobService.findOne(jobid);
-	}
-
-	@Override
-	public void jobToBeExecuted(JobExecutionContext context) {
-		JobBean info = getJobInfoFromContext(context);
-		try {
-			log.info("{} job to be executed.", info.getJobDisplay());
-			info.setStartTime(new Date());
-			jobService.save(info);
-		} catch (Throwable e) {
-			log.info("{} job to be executed error:", info == null ? "null" : info.getJobDisplay(), e.getMessage());
-		}
-
-	}
-
-	@Override
-	public void jobExecutionVetoed(JobExecutionContext context) {
-		log.info("jobExecutionVetoed");
-	}
-
-	@Override
-	public void jobWasExecuted(JobExecutionContext context, JobExecutionException jobException) {
-		JobBean info = getJobInfoFromContext(context);
-		log.info("{} job was executed,cost:{}", info.getJobDisplay(), context.getJobRunTime());
-		info.setEndTime(new Date());
-		jobService.save(info);
-	}
-}

+ 0 - 71
xtdsp/trunk/src/main/java/com/xt/dsp/job/SqlSynJob.java

@@ -1,71 +0,0 @@
-package com.xt.dsp.job;
-
-import java.util.List;
-
-import org.quartz.Job;
-import org.quartz.JobExecutionContext;
-import org.quartz.JobExecutionException;
-import org.quartz.SchedulerContext;
-import org.quartz.SchedulerException;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-import org.springframework.context.ApplicationContext;
-import org.springframework.util.StringUtils;
-
-import com.xt.dsp.model.JobBean;
-import com.xt.dsp.model.TaskBean;
-import com.xt.dsp.service.JobService;
-import com.xt.dsp.service.TaskService;
-import com.xt.dsp.service.TaskSqlService;
-
-/**
- * 工作调度控制
- * 
- * @author yuanxd
- *
- */
-public class SqlSynJob implements Job {
-	/** 日志记录 */
-	private final Logger log = LoggerFactory.getLogger(SqlSynJob.class);
-	/** 任务服务接口 */
-	private TaskService taskService;
-	/** SQL抽取任务服务接口 */
-	private TaskSqlService taskSqlService;
-	/** 工作信息服务 */
-	private JobService jobService = null;
-
-	private void initServices(ApplicationContext appCtx) {
-		this.taskService = appCtx.getBean(TaskService.class);
-		this.taskSqlService = appCtx.getBean(TaskSqlService.class);
-		this.jobService = appCtx.getBean(JobService.class);
-	}
-
-	@Override
-	public void execute(JobExecutionContext context) throws JobExecutionException {
-		long start = System.currentTimeMillis();
-		SchedulerContext schCtx = null;
-		try {
-			schCtx = context.getScheduler().getContext();
-		} catch (SchedulerException e) {
-			log.error("get scheduler error:{}", e.getMessage());
-			return;
-		}
-		initServices((ApplicationContext) schCtx.get("applicationContext"));
-		String jobId = context.getJobDetail().getJobDataMap().getString(JobService.PARAM_JOB);
-		JobBean job = jobService.findOne(jobId);
-		if (null == job) {
-			throw new IllegalArgumentException("未找到执行任务信息!");
-		}
-		if (StringUtils.isEmpty(job.getCode())) {
-			throw new IllegalArgumentException("job code不可为空!");
-		}
-		List<TaskBean> tasks = taskService.selectByJobCode(job.getCode());
-		for (TaskBean t : tasks) {
-			// SQL 同步任务
-			if (TaskBean.TYPE_SQL.equals(t.getType())) {
-				taskSqlService.runTask(t, null);
-			}
-		}
-		log.info("任务执行完成,耗时:{}", System.currentTimeMillis() - start);
-	}
-}

+ 0 - 7
xtdsp/trunk/src/main/java/com/xt/dsp/mappers/DataSourceBeanMapper.java

@@ -1,7 +0,0 @@
-package com.xt.dsp.mappers;
-
-import com.xt.dsp.model.DataSourceBean;
-import com.xt.dsp.system.BaseMapper;
-
-public interface DataSourceBeanMapper extends BaseMapper<DataSourceBean> {
-}

+ 0 - 7
xtdsp/trunk/src/main/java/com/xt/dsp/mappers/JobBeanMapper.java

@@ -1,7 +0,0 @@
-package com.xt.dsp.mappers;
-
-import com.xt.dsp.model.JobBean;
-import com.xt.dsp.system.BaseMapper;
-
-public interface JobBeanMapper extends BaseMapper<JobBean> {
-}

+ 0 - 13
xtdsp/trunk/src/main/java/com/xt/dsp/mappers/TaskBeanMapper.java

@@ -1,13 +0,0 @@
-package com.xt.dsp.mappers;
-
-import java.util.List;
-
-import com.xt.dsp.model.TaskBean;
-import com.xt.dsp.system.BaseMapper;
-
-public interface TaskBeanMapper extends BaseMapper<TaskBean> {
-
-	List<TaskBean> selectByJobCode(String code);
-
-	TaskBean selectByCode(String code);
-}

+ 0 - 15
xtdsp/trunk/src/main/java/com/xt/dsp/mappers/TaskSqlBeanMapper.java

@@ -1,15 +0,0 @@
-package com.xt.dsp.mappers;
-
-import java.util.List;
-
-import com.xt.dsp.model.TaskSqlBean;
-import com.xt.dsp.system.BaseMapper;
-
-public interface TaskSqlBeanMapper extends BaseMapper<TaskSqlBean> {
-	/**
-	 * 根据任务编码查询Sql任务配置
-	 * @param taskId
-	 * @return
-	 */
-	List<TaskSqlBean> selectByTaskCode(String taskId);
-}

+ 0 - 192
xtdsp/trunk/src/main/java/com/xt/dsp/model/DataSourceBean.java

@@ -1,192 +0,0 @@
-package com.xt.dsp.model;
-
-import java.util.Properties;
-
-public class DataSourceBean {
-	private String id;
-
-	private String url;
-
-	private String driverclassname;
-
-	private String username;
-
-	private String password;
-
-	private String initialsize;
-
-	private String minidle;
-
-	private String maxactive;
-
-	private String timebetweenevictionrunsmillis;
-
-	private String minevictableidletimemillis;
-
-	private String testonreturn;
-
-	private String poolpreparedstatements;
-
-	private String maxpoolpreparedstatementpercon;
-
-	private String validationquery;
-
-	public Properties toProperties() {
-		Properties props = new Properties();
-		if (null != url) {
-			props.setProperty("url", url);
-		}
-		if (null != driverclassname) {
-			props.setProperty("driverclassname", driverclassname);
-		}
-		if (null != username) {
-			props.setProperty("username", username);
-		}
-		if (null != password) {
-			props.setProperty("password", password);
-		}
-		if (null != initialsize) {
-			props.setProperty("initialsize", initialsize);
-		}
-		if (null != minidle) {
-			props.setProperty("minidle", minidle);
-		}
-		if (null != maxactive) {
-			props.setProperty("maxactive", maxactive);
-		}
-		if (null != timebetweenevictionrunsmillis) {
-			props.setProperty("timebetweenevictionrunsmillis", timebetweenevictionrunsmillis);
-		}
-		if (null != minevictableidletimemillis) {
-			props.setProperty("minevictableidletimemillis", minevictableidletimemillis);
-		}
-		if (null != testonreturn) {
-			props.setProperty("testonreturn", testonreturn);
-		}
-		if (null != poolpreparedstatements) {
-			props.setProperty("poolpreparedstatements", poolpreparedstatements);
-		}
-		if (null != maxpoolpreparedstatementpercon) {
-			props.setProperty("maxpoolpreparedstatementpercon", maxpoolpreparedstatementpercon);
-		}
-		if (null != validationquery) {
-			props.setProperty("validationquery", validationquery);
-		}
-
-		return props;
-	}
-
-	public String getId() {
-		return id;
-	}
-
-	public void setId(String id) {
-		this.id = id == null ? null : id.trim();
-	}
-
-	public String getUrl() {
-		return url;
-	}
-
-	public void setUrl(String url) {
-		this.url = url == null ? null : url.trim();
-	}
-
-	public String getDriverclassname() {
-		return driverclassname;
-	}
-
-	public void setDriverclassname(String driverclassname) {
-		this.driverclassname = driverclassname == null ? null : driverclassname.trim();
-	}
-
-	public String getUsername() {
-		return username;
-	}
-
-	public void setUsername(String username) {
-		this.username = username == null ? null : username.trim();
-	}
-
-	public String getPassword() {
-		return password;
-	}
-
-	public void setPassword(String password) {
-		this.password = password == null ? null : password.trim();
-	}
-
-	public String getInitialsize() {
-		return initialsize;
-	}
-
-	public void setInitialsize(String initialsize) {
-		this.initialsize = initialsize == null ? null : initialsize.trim();
-	}
-
-	public String getMinidle() {
-		return minidle;
-	}
-
-	public void setMinidle(String minidle) {
-		this.minidle = minidle == null ? null : minidle.trim();
-	}
-
-	public String getMaxactive() {
-		return maxactive;
-	}
-
-	public void setMaxactive(String maxactive) {
-		this.maxactive = maxactive == null ? null : maxactive.trim();
-	}
-
-	public String getTimebetweenevictionrunsmillis() {
-		return timebetweenevictionrunsmillis;
-	}
-
-	public void setTimebetweenevictionrunsmillis(String timebetweenevictionrunsmillis) {
-		this.timebetweenevictionrunsmillis = timebetweenevictionrunsmillis == null ? null
-				: timebetweenevictionrunsmillis.trim();
-	}
-
-	public String getMinevictableidletimemillis() {
-		return minevictableidletimemillis;
-	}
-
-	public void setMinevictableidletimemillis(String minevictableidletimemillis) {
-		this.minevictableidletimemillis = minevictableidletimemillis == null ? null : minevictableidletimemillis.trim();
-	}
-
-	public String getTestonreturn() {
-		return testonreturn;
-	}
-
-	public void setTestonreturn(String testonreturn) {
-		this.testonreturn = testonreturn == null ? null : testonreturn.trim();
-	}
-
-	public String getPoolpreparedstatements() {
-		return poolpreparedstatements;
-	}
-
-	public void setPoolpreparedstatements(String poolpreparedstatements) {
-		this.poolpreparedstatements = poolpreparedstatements == null ? null : poolpreparedstatements.trim();
-	}
-
-	public String getMaxpoolpreparedstatementpercon() {
-		return maxpoolpreparedstatementpercon;
-	}
-
-	public void setMaxpoolpreparedstatementpercon(String maxpoolpreparedstatementpercon) {
-		this.maxpoolpreparedstatementpercon = maxpoolpreparedstatementpercon == null ? null
-				: maxpoolpreparedstatementpercon.trim();
-	}
-
-	public String getValidationquery() {
-		return validationquery;
-	}
-
-	public void setValidationquery(String validationquery) {
-		this.validationquery = validationquery == null ? null : validationquery.trim();
-	}
-}

+ 0 - 138
xtdsp/trunk/src/main/java/com/xt/dsp/model/JobBean.java

@@ -1,138 +0,0 @@
-package com.xt.dsp.model;
-
-import java.util.Date;
-
-public class JobBean {
-	private String id;
-
-	private String name;
-
-	private Date createTime;
-
-	private Date startTime;
-
-	private Date endTime;
-
-	private String circle;
-
-	private String result;
-
-	private Short interval;
-
-	private String status;
-
-	private String param;
-
-	private String cronExpression;
-
-	private String code;
-
-	public String getCircle() {
-		return circle;
-	}
-
-	public String getCode() {
-		return code;
-	}
-
-	public Date getCreateTime() {
-		return createTime;
-	}
-
-	public String getCronExpression() {
-		return cronExpression;
-	}
-
-	public Date getEndTime() {
-		return endTime;
-	}
-
-	public String getGroup() {
-		return "group_" + code;
-	}
-
-	public String getId() {
-		return id;
-	}
-
-	public Short getInterval() {
-		return interval;
-	}
-
-	/**
-	 * 返回任务显示信息
-	 * 
-	 * @return
-	 */
-	public String getJobDisplay() {
-		return name + "[" + code+"]" ;
-	}
-
-	public String getName() {
-		return name;
-	}
-
-	public String getParam() {
-		return param;
-	}
-
-	public String getResult() {
-		return result;
-	}
-
-	public Date getStartTime() {
-		return startTime;
-	}
-
-	public String getStatus() {
-		return status;
-	}
-
-	public void setCircle(String circle) {
-		this.circle = circle == null ? null : circle.trim();
-	}
-
-	public void setCode(String code) {
-		this.code = code == null ? null : code.trim();
-	}
-
-	public void setCreateTime(Date createTime) {
-		this.createTime = createTime;
-	}
-
-	public void setCronExpression(String cronExpression) {
-		this.cronExpression = cronExpression == null ? null : cronExpression.trim();
-	}
-
-	public void setEndTime(Date endTime) {
-		this.endTime = endTime;
-	}
-
-	public void setId(String id) {
-		this.id = id == null ? null : id.trim();
-	}
-
-	public void setInterval(Short interval) {
-		this.interval = interval;
-	}
-
-	public void setName(String name) {
-		this.name = name == null ? null : name.trim();
-	}
-
-	public void setParam(String param) {
-		this.param = param == null ? null : param.trim();
-	}
-
-	public void setResult(String result) {
-		this.result = result == null ? null : result.trim();
-	}
-
-	public void setStartTime(Date startTime) {
-		this.startTime = startTime;
-	}
-
-	public void setStatus(String status) {
-		this.status = status == null ? null : status.trim();
-	}
-}

+ 0 - 86
xtdsp/trunk/src/main/java/com/xt/dsp/model/TaskBean.java

@@ -1,86 +0,0 @@
-package com.xt.dsp.model;
-
-/**
- * 抽取任务对象
- * 
- * @author yuanxd
- *
- */
-public class TaskBean {
-	/** SQL->TABLE任务 */
-	public static final String TYPE_SQL = "1";
-	/** 使用系统缓存 */
-	public static final String CACHE_USE = "1";
-	/** 未使用系统缓存 */
-	public static final String CACHE_UNUSE = "0";
-
-	private String id;
-
-	private String name;
-
-	private String code;
-
-	private String jobCode;
-
-	private String type;
-	/** 文件缓存目录 */
-	private String cacheFolder;
-	/** 缓存是否在使用中 */
-	private String cacheUse;
-
-	public String getCacheFolder() {
-		return cacheFolder;
-	}
-
-	public String getCacheUse() {
-		return cacheUse;
-	}
-
-	public String getCode() {
-		return code;
-	}
-
-	public String getId() {
-		return id;
-	}
-
-	public String getJobCode() {
-		return jobCode;
-	}
-
-	public String getName() {
-		return name;
-	}
-
-	public String getType() {
-		return type;
-	}
-
-	public void setCacheFolder(String cacheFolder) {
-		this.cacheFolder = cacheFolder;
-	}
-
-	public void setCacheUse(String cacheUse) {
-		this.cacheUse = cacheUse;
-	}
-
-	public void setCode(String code) {
-		this.code = code == null ? null : code.trim();
-	}
-
-	public void setId(String id) {
-		this.id = id == null ? null : id.trim();
-	}
-
-	public void setJobCode(String jobCode) {
-		this.jobCode = jobCode == null ? null : jobCode.trim();
-	}
-
-	public void setName(String name) {
-		this.name = name == null ? null : name.trim();
-	}
-
-	public void setType(String type) {
-		this.type = type == null ? null : type.trim();
-	}
-}

+ 0 - 109
xtdsp/trunk/src/main/java/com/xt/dsp/model/TaskSqlBean.java

@@ -1,109 +0,0 @@
-package com.xt.dsp.model;
-
-public class TaskSqlBean {
-	public static final String REFRESH_SQL_TRUE = "1";
-	public static final String REFRESH_SQL_FALSE = "0";
-	public static final String MODE_ONE = "1";
-	public static final String MODE_ALL = "2";
-	private String id;
-	private String taskCode;
-	private String srcConn;
-	private String targetConn;
-	private String querySql;
-	private String updateSql;
-	private String insertSql;
-	private String refreshSql;
-	private String columns;
-	/** 数据同步方式;1:逐条更新、2:全部删除后插入 */
-	private String mode;
-
-	private String targetTable;
-
-	public String getColumns() {
-		return columns;
-	}
-
-	public String getId() {
-		return id;
-	}
-
-	public String getInsertSql() {
-		return insertSql;
-	}
-
-	public String getMode() {
-		return mode;
-	}
-
-	public String getQuerySql() {
-		return querySql;
-	}
-
-	public String getRefreshSql() {
-		return refreshSql;
-	}
-
-	public String getSrcConn() {
-		return srcConn;
-	}
-
-	public String getTargetConn() {
-		return targetConn;
-	}
-
-	public String getTargetTable() {
-		return targetTable;
-	}
-
-	public String getTaskCode() {
-		return taskCode;
-	}
-
-	public String getUpdateSql() {
-		return updateSql;
-	}
-
-	public void setColumns(String columns) {
-		this.columns = columns;
-	}
-
-	public void setId(String id) {
-		this.id = id == null ? null : id.trim();
-	}
-
-	public void setInsertSql(String insertSql) {
-		this.insertSql = insertSql;
-	}
-
-	public void setMode(String mode) {
-		this.mode = mode;
-	}
-
-	public void setQuerySql(String querySql) {
-		this.querySql = querySql == null ? null : querySql.trim();
-	}
-
-	public void setRefreshSql(String refreshSql) {
-		this.refreshSql = refreshSql;
-	}
-
-	public void setSrcConn(String srcConn) {
-		this.srcConn = srcConn == null ? null : srcConn.trim();
-	}
-
-	public void setTargetConn(String targetConn) {
-		this.targetConn = targetConn == null ? null : targetConn.trim();
-	}
-
-	public void setTargetTable(String targetTable) {
-		this.targetTable = targetTable == null ? null : targetTable.trim();
-	}
-
-	public void setTaskCode(String taskCode) {
-		this.taskCode = taskCode == null ? null : taskCode.trim();
-	}
-
-	public void setUpdateSql(String updateSql) {
-		this.updateSql = updateSql;
-	}
-}

+ 0 - 11
xtdsp/trunk/src/main/java/com/xt/dsp/service/CacheBeanService.java

@@ -1,11 +0,0 @@
-package com.xt.dsp.service;
-
-import java.util.List;
-
-import com.xt.dsp.bean.TaskCacheBean;
-
-public interface CacheBeanService {
-	public int writeCache(TaskCacheBean taskCacheBean);
-
-	public List<TaskCacheBean> readCache(String folder);
-}

+ 0 - 7
xtdsp/trunk/src/main/java/com/xt/dsp/service/DataSourceService.java

@@ -1,7 +0,0 @@
-package com.xt.dsp.service;
-
-import com.xt.dsp.model.DataSourceBean;
-
-public interface DataSourceService {
-	DataSourceBean selectByPrimaryKey(String id);
-}

+ 0 - 75
xtdsp/trunk/src/main/java/com/xt/dsp/service/JobService.java

@@ -1,75 +0,0 @@
-package com.xt.dsp.service;
-
-import java.util.List;
-
-import com.xt.dsp.model.JobBean;
-
-/**
- * 任务调度服务接口
- * 
- * @author 袁晓冬
- *
- */
-public interface JobService {
-	String PARAM_JOB = "jobInfo";
-
-	/***
-	 * 添加调度任务
-	 * 
-	 * @return 成功返回大于0,失败返回小于0
-	 */
-	public int addJob(JobBean job);
-
-	/**
-	 * 暂停指定调度任务
-	 * 
-	 * @param jobInfo
-	 * @return 成功返回大于0,失败返回小于0
-	 */
-	public int pauseJob(JobBean job);
-
-	/**
-	 * 恢复调度任务执行
-	 * 
-	 * @param jobInfo
-	 * @return
-	 */
-	public int resumeJob(JobBean job);
-
-	/**
-	 * service初始化处理
-	 */
-	public void start();
-
-	/**
-	 * 查询所有设定的任务
-	 * 
-	 * @return
-	 */
-	public List<JobBean> queryAllJob();
-
-	/**
-	 * 立即运行任务
-	 * 
-	 * @param jobInfo
-	 * @return 成功返回大于0,失败返回小于0
-	 */
-	public int triggerJob(JobBean job);
-
-	/**
-	 * 根据任务ID查找任务
-	 * 
-	 * @param id
-	 * @return
-	 */
-	public JobBean findOne(String id);
-
-	/**
-	 * 保存任务信息
-	 * 
-	 * @param code
-	 * @return
-	 */
-	public JobBean save(JobBean job);
-
-}

+ 0 - 19
xtdsp/trunk/src/main/java/com/xt/dsp/service/TaskRun.java

@@ -1,19 +0,0 @@
-package com.xt.dsp.service;
-
-import com.xt.dsp.model.TaskBean;
-
-/**
- * 可执行任务接口
- * 
- * @author yuanxd
- *
- */
-public interface TaskRun {
-	/**
-	 * 执行任务
-	 * 
-	 * @param t
-	 * @return
-	 */
-	public int runTask(TaskBean t, String condition);
-}

+ 0 - 37
xtdsp/trunk/src/main/java/com/xt/dsp/service/TaskService.java

@@ -1,37 +0,0 @@
-package com.xt.dsp.service;
-
-import java.util.List;
-
-import com.xt.dsp.model.TaskBean;
-
-/**
- * 任务服务接口
- * 
- * @author yuanxd
- *
- */
-public interface TaskService {
-	/**
-	 * 根据工作编码查询工作下所有任务
-	 * 
-	 * @param code
-	 * @return
-	 */
-	List<TaskBean> selectByJobCode(String code);
-
-	/**
-	 * 根据任务唯一编码查询任务
-	 * 
-	 * @param code
-	 * @return
-	 */
-	TaskBean selectByCode(String code);
-
-	/**
-	 * 更新
-	 * 
-	 * @param record
-	 * @return
-	 */
-	public int updateByPrimaryKey(TaskBean record);
-}

+ 0 - 14
xtdsp/trunk/src/main/java/com/xt/dsp/service/TaskSqlService.java

@@ -1,14 +0,0 @@
-package com.xt.dsp.service;
-
-import java.util.List;
-
-import com.xt.dsp.model.TaskSqlBean;
-
-public interface TaskSqlService extends TaskRun {
-
-	List<TaskSqlBean> selectByTaskCode(String taskCode);
-
-	TaskSqlBean selectByPrimaryKey(String id);
-
-	public int updateByPrimaryKey(TaskSqlBean record);
-}

+ 0 - 87
xtdsp/trunk/src/main/java/com/xt/dsp/serviceImpl/CacheBeanServiceImpl.java

@@ -1,87 +0,0 @@
-package com.xt.dsp.serviceImpl;
-
-import java.io.File;
-import java.io.FileInputStream;
-import java.io.FileOutputStream;
-import java.io.IOException;
-import java.io.ObjectInputStream;
-import java.io.ObjectOutputStream;
-import java.util.ArrayList;
-import java.util.List;
-
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-import org.springframework.stereotype.Service;
-
-import com.alibaba.fastjson.JSONObject;
-import com.xt.dsp.bean.TaskCacheBean;
-import com.xt.dsp.service.CacheBeanService;
-
-@Service
-public class CacheBeanServiceImpl implements CacheBeanService {
-	private final Logger log = LoggerFactory.getLogger(CacheBeanServiceImpl.class);
-
-	@Override
-	public List<TaskCacheBean> readCache(String cacheFolder) {
-		File folder = new File(cacheFolder);
-		if (!folder.exists()) {
-			return null;
-		}
-		List<TaskCacheBean> taskCacheBeanList = new ArrayList<>();
-		for (File f : folder.listFiles()) {
-			TaskCacheBean tc = new TaskCacheBean();
-			tc.setFileName(f.getName());
-			ObjectInputStream in = null;
-			try {
-				in = new ObjectInputStream(new FileInputStream(f));
-				tc.setCacheData((JSONObject) in.readObject());
-				taskCacheBeanList.add(tc);
-			} catch (Exception e) {
-				log.error("file read error:{}", e.getMessage());
-			} finally {
-				if (null != in) {
-					try {
-						in.close();
-					} catch (IOException e) {
-					}
-				}
-				f.delete();
-			}
-		}
-		return taskCacheBeanList;
-	}
-
-	@Override
-	public int writeCache(TaskCacheBean taskCacheBean) {
-		// String fileName = job.getId() + "-" + ts.getTaskId() + "-" +
-		// ts.getId() + System.currentTimeMillis();
-		String cacheFolder = taskCacheBean.getCacheFolder() == null ? "" : taskCacheBean.getCacheFolder();
-		File folder = new File(cacheFolder);
-		String fileName = taskCacheBean.getFileName();
-		int count = 0;
-		File f = new File(folder, fileName + "-" + (count));
-		while (f.exists()) {
-			f = new File(folder, fileName + "-" + (++count));
-		}
-		if (count > 0) {
-			f = new File(folder, fileName + "-" + count);
-		}
-		ObjectOutputStream out = null;
-		try {
-			out = new ObjectOutputStream(new FileOutputStream(f));
-			out.writeObject(taskCacheBean.getCacheData());
-			out.flush();
-		} catch (IOException e) {
-			log.error("缓存写入失败:{}", e.getMessage());
-		} finally {
-			if (null != out) {
-				try {
-					out.close();
-				} catch (IOException e) {
-					e.printStackTrace();
-				}
-			}
-		}
-		return 0;
-	}
-}

+ 0 - 20
xtdsp/trunk/src/main/java/com/xt/dsp/serviceImpl/DataSourceServiceImpl.java

@@ -1,20 +0,0 @@
-package com.xt.dsp.serviceImpl;
-
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.stereotype.Service;
-
-import com.xt.dsp.mappers.DataSourceBeanMapper;
-import com.xt.dsp.model.DataSourceBean;
-import com.xt.dsp.service.DataSourceService;
-
-@Service
-public class DataSourceServiceImpl implements DataSourceService {
-	@Autowired
-	private DataSourceBeanMapper mapper;
-
-	@Override
-	public DataSourceBean selectByPrimaryKey(String id) {
-		return mapper.selectByPrimaryKey(id);
-	}
-
-}

+ 0 - 171
xtdsp/trunk/src/main/java/com/xt/dsp/serviceImpl/JobInfoServiceImpl.java

@@ -1,171 +0,0 @@
-package com.xt.dsp.serviceImpl;
-
-import static org.quartz.CronScheduleBuilder.cronSchedule;
-import static org.quartz.SimpleScheduleBuilder.simpleSchedule;
-
-import java.util.List;
-
-import org.quartz.CronTrigger;
-import org.quartz.JobBuilder;
-import org.quartz.JobDetail;
-import org.quartz.JobKey;
-import org.quartz.Scheduler;
-import org.quartz.SchedulerException;
-import org.quartz.Trigger;
-import org.quartz.TriggerBuilder;
-import org.quartz.TriggerKey;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.stereotype.Service;
-import org.springframework.util.StringUtils;
-
-import com.xt.dsp.job.SqlSynJob;
-import com.xt.dsp.mappers.JobBeanMapper;
-import com.xt.dsp.model.JobBean;
-import com.xt.dsp.service.JobService;
-
-/**
- * 定时任务服务
- * 
- * @author 袁晓冬
- *
- */
-@Service
-public class JobInfoServiceImpl implements JobService {
-	private static final Logger log = LoggerFactory.getLogger(JobInfoServiceImpl.class);
-	@Autowired
-	private Scheduler scheduler = null;
-	@Autowired
-	private JobBeanMapper jobBeanMapper = null;
-	private static boolean STARTED = false;
-
-	@Override
-	public int addJob(JobBean job) {
-		// 任务名称和任务组设置规则:
-		// 名称:task_1 ..
-		// 组 :group_1 ..
-		TriggerKey triggerKey = TriggerKey.triggerKey(job.getCode(), job.getGroup());
-		CronTrigger trigger = null;
-		try {
-			trigger = (CronTrigger) scheduler.getTrigger(triggerKey);
-		} catch (SchedulerException e) {
-			e.printStackTrace();
-		}
-		// 不存在,创建一个
-		if (null == trigger) {
-			try {
-				addQuartzJob(job);
-			} catch (ClassNotFoundException | SchedulerException e) {
-				e.printStackTrace();
-			}
-		} else {
-			// 按新的trigger重新设置job执行
-			try {
-				scheduler.rescheduleJob(triggerKey, getTriggerFromJob(job));
-			} catch (SchedulerException e) {
-				e.printStackTrace();
-			}
-		}
-		return 0;
-	}
-
-	@Override
-	public int pauseJob(JobBean job) {
-		try {
-			scheduler.pauseJob(getJobKey(job));
-		} catch (SchedulerException e) {
-			log.error("pause job[{}] error {}", job.getJobDisplay(), e.getMessage());
-			return -1;
-		}
-		return 0;
-	}
-
-	@Override
-	public int resumeJob(JobBean job) {
-		try {
-			scheduler.resumeJob(getJobKey(job));
-		} catch (SchedulerException e) {
-			log.error("resume job[{}] error {}", job.getJobDisplay(), e.getMessage());
-			return -1;
-		}
-		return 0;
-	}
-
-	@Override
-	public void start() {
-		if (STARTED) {
-			log.error("任务实例已启动,请不要重复启动!");
-			return;
-		}
-		// 可执行的任务列表
-		List<JobBean> jobs = queryAllJob();
-		for (JobBean job : jobs) {
-			addJob(job);
-		}
-		try {
-			scheduler.start();
-		} catch (SchedulerException e) {
-			e.printStackTrace();
-		}
-	}
-
-	@Override
-	public List<JobBean> queryAllJob() {
-		return jobBeanMapper.selectAll();
-	}
-
-	private JobKey getJobKey(JobBean job) {
-		return JobKey.jobKey(job.getCode(), job.getGroup());
-	}
-
-	@Override
-	public int triggerJob(JobBean job) {
-		JobKey jobKey = getJobKey(job);
-		try {
-			scheduler.triggerJob(jobKey);
-		} catch (SchedulerException e) {
-			log.error("trigger job[{}] error {}", job.getJobDisplay(), e.getMessage());
-			return -1;
-		}
-		return 0;
-	}
-
-	@Override
-	public JobBean findOne(String id) {
-		return jobBeanMapper.selectByPrimaryKey(id);
-	}
-
-	@Override
-	public JobBean save(JobBean job) {
-		int count = jobBeanMapper.updateByPrimaryKey(job);
-		if (count == 0) {
-			jobBeanMapper.insert(job);
-		}
-		return job;
-	}
-
-	@SuppressWarnings({ "rawtypes", "unchecked" })
-	private Trigger getTriggerFromJob(JobBean job) {
-		// 按新的表达式构建一个新的trigger
-		TriggerBuilder tb = TriggerBuilder.newTrigger().withIdentity(job.getCode(), job.getGroup());
-		if (StringUtils.isEmpty(job.getCronExpression())) {
-			tb.startAt(job.getStartTime());
-			if ("y".equalsIgnoreCase(job.getCircle())) {
-				// 换算成秒
-				tb.withSchedule(simpleSchedule().withIntervalInSeconds(job.getInterval()).repeatForever());
-			}
-		} else {
-			// tb.startNow();
-			tb.startNow().withSchedule(cronSchedule(job.getCronExpression()));
-		}
-		return tb.build();
-	}
-
-	private void addQuartzJob(JobBean job) throws ClassNotFoundException, SchedulerException {
-		JobDetail jobDetail = JobBuilder.newJob(SqlSynJob.class).withIdentity(job.getCode(), job.getGroup()).build();
-		jobDetail.getJobDataMap().put(PARAM_JOB, job.getId());
-		// 按新的表达式构建一个新的trigger
-		scheduler.scheduleJob(jobDetail, getTriggerFromJob(job));
-	}
-}

+ 0 - 39
xtdsp/trunk/src/main/java/com/xt/dsp/serviceImpl/TaskServiceImpl.java

@@ -1,39 +0,0 @@
-package com.xt.dsp.serviceImpl;
-
-import java.util.List;
-
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.stereotype.Service;
-
-import com.xt.dsp.mappers.TaskBeanMapper;
-import com.xt.dsp.model.TaskBean;
-import com.xt.dsp.service.TaskService;
-
-@Service
-public class TaskServiceImpl implements TaskService {
-	@Autowired
-	private TaskBeanMapper mapper;
-
-	@Override
-	public List<TaskBean> selectByJobCode(String code) {
-		return mapper.selectByJobCode(code);
-	}
-
-	/**
-	 * 根据主键更新记录
-	 * 
-	 * @param record
-	 *            T
-	 * @return
-	 */
-	@Override
-	public int updateByPrimaryKey(TaskBean record) {
-		return mapper.updateByPrimaryKey(record);
-	}
-
-	@Override
-	public TaskBean selectByCode(String code) {
-		return mapper.selectByCode(code);
-	}
-	
-}

+ 0 - 453
xtdsp/trunk/src/main/java/com/xt/dsp/serviceImpl/TaskSqlServiceImpl.java

@@ -1,453 +0,0 @@
-package com.xt.dsp.serviceImpl;
-
-import java.sql.Connection;
-import java.sql.DatabaseMetaData;
-import java.sql.ResultSet;
-import java.sql.ResultSetMetaData;
-import java.sql.SQLException;
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.Collection;
-import java.util.Collections;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
-
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.dao.DataAccessException;
-import org.springframework.jdbc.core.ConnectionCallback;
-import org.springframework.jdbc.core.JdbcTemplate;
-import org.springframework.jdbc.core.ResultSetExtractor;
-import org.springframework.jdbc.core.namedparam.MapSqlParameterSource;
-import org.springframework.jdbc.core.namedparam.NamedParameterJdbcTemplate;
-import org.springframework.jdbc.core.namedparam.SqlParameterSource;
-import org.springframework.jdbc.datasource.DataSourceTransactionManager;
-import org.springframework.stereotype.Service;
-import org.springframework.transaction.TransactionStatus;
-import org.springframework.transaction.support.DefaultTransactionDefinition;
-import org.springframework.util.StringUtils;
-
-import com.alibaba.fastjson.JSONArray;
-import com.alibaba.fastjson.JSONObject;
-import com.xt.dsp.bean.TaskCacheBean;
-import com.xt.dsp.jdbc.JdbcTemplateUtils;
-import com.xt.dsp.mappers.TaskSqlBeanMapper;
-import com.xt.dsp.model.DataSourceBean;
-import com.xt.dsp.model.TaskBean;
-import com.xt.dsp.model.TaskSqlBean;
-import com.xt.dsp.service.CacheBeanService;
-import com.xt.dsp.service.DataSourceService;
-import com.xt.dsp.service.TaskService;
-import com.xt.dsp.service.TaskSqlService;
-
-@Service
-public class TaskSqlServiceImpl implements TaskSqlService {
-	/** 日志记录 */
-	private final Logger log = LoggerFactory.getLogger(TaskSqlServiceImpl.class);
-	@Autowired
-	private TaskSqlBeanMapper mapper;
-	/** sql抽取任务服务接口 */
-	@Autowired
-	private TaskService taskService;
-	/** 任务缓存服务 */
-	@Autowired
-	private CacheBeanService cacheBeanService;
-	/** 数据源服务接口 */
-	@Autowired
-	private DataSourceService dataSourceService;
-
-	public List<TaskSqlBean> selectByTaskCode(String taskCode) {
-		return mapper.selectByTaskCode(taskCode);
-	}
-
-	/**
-	 * 根据主键查找记录
-	 * 
-	 * @param id
-	 *            String
-	 * @return T
-	 */
-	public TaskSqlBean selectByPrimaryKey(String id) {
-		return mapper.selectByPrimaryKey(id);
-	}
-
-	public int updateByPrimaryKey(TaskSqlBean record) {
-		return mapper.updateByPrimaryKey(record);
-	}
-
-	/**
-	 * SQL同步任务处理<br>
-	 * 事务处理
-	 * 
-	 * @param taskSqlBeans
-	 */
-	public int runTask(TaskBean t, String condition) {
-		log.info("SqlTask[{}] running......", t.getCode());
-		if (!TaskBean.TYPE_SQL.equals(t.getType())) {
-			return -1;
-		}
-		long start = System.currentTimeMillis();
-		// 执行缓存
-		executeCache(t);
-		List<TaskSqlBean> taskSqlBeans = selectByTaskCode(t.getCode());
-		if (taskSqlBeans == null || taskSqlBeans.size() == 0) {
-			return 0;
-		}
-		for (TaskSqlBean ts : taskSqlBeans) {
-			JSONObject result = getSqlResultJsonObject(ts, condition);
-			if (null == result || result.getJSONArray("data").size() == 0) {
-				continue;
-			}
-			if (TaskBean.CACHE_USE.equals(t.getCacheUse())) {
-				saveCache(t, ts, result);
-			} else {
-				runTaskSqlWithJdbcTemplate(t, ts, result);
-			}
-		}
-		log.info("SqlTask[{}] finished,cost:{}", t.getCode(), System.currentTimeMillis() - start);
-		return 0;
-	}
-
-	/**
-	 * 执行缓存,执行成功返回0,否则返回其他
-	 * 
-	 * @param t
-	 * @return
-	 */
-	private int executeCache(TaskBean t) {
-		long start = System.currentTimeMillis();
-		List<TaskCacheBean> taskDatas = cacheBeanService.readCache(t.getCacheFolder());
-		// 无缓存数据
-		if (taskDatas == null || taskDatas.size() == 0) {
-			t.setCacheUse(TaskBean.CACHE_UNUSE);
-			taskService.updateByPrimaryKey(t);
-			return 0;
-		}
-		Collections.sort(taskDatas);
-		Map<String, TaskSqlBean> tsbs = new HashMap<>();
-		for (TaskCacheBean tc : taskDatas) {
-			String tsbid = tc.getTaskId();
-			TaskSqlBean bean = null;
-			if (tsbs.containsKey(tsbid)) {
-				bean = tsbs.get(tsbid);
-			} else {
-				bean = selectByPrimaryKey(tsbid);
-				if (null == bean) {
-					return -1;
-				}
-				tsbs.put(tsbid, bean);
-			}
-			if (null == bean) {
-				return -1;
-			}
-			runTaskSqlWithJdbcTemplate(t, bean, tc.getCacheData());
-		}
-		t.setCacheUse(TaskBean.CACHE_UNUSE);
-		taskService.updateByPrimaryKey(t);
-		long cost = System.currentTimeMillis() - start;
-		log.info("SqlTask[{}],execute cache cost:{}", t.getCode(), cost);
-		return 0;
-	}
-
-	private Map<String, Object> getParamMapFromCondition(String condition) {
-		Map<String, Object> param = new HashMap<>();
-		if (null == condition) {
-			return param;
-		}
-		String[] conditions = condition.split(";");
-		int index = -1;
-		for (String c : conditions) {
-			index = c.indexOf('=');
-			if (index < 0) {
-				throw new IllegalArgumentException("条件不合法:" + c);
-			}
-			String name = c.substring(0, index);
-			if (name.endsWith("_IN")) {
-				param.put(name, Arrays.asList(c.substring(index + 1).split(",")));
-			} else {
-				param.put(name, c.substring(index + 1));
-			}
-		}
-		return param;
-	}
-
-	/**
-	 * 获取sql检索结果
-	 * 
-	 * @param taskSqlBean
-	 * @return
-	 */
-	private JSONObject getSqlResultJsonObject(TaskSqlBean taskSqlBean, String condition) {
-		long start = System.currentTimeMillis();
-		String dsid = taskSqlBean.getSrcConn();
-		DataSourceBean dsb = dataSourceService.selectByPrimaryKey(dsid);
-		NamedParameterJdbcTemplate nameJdbcTemplate = new NamedParameterJdbcTemplate(
-				JdbcTemplateUtils.getJdbcTemplate(dsb));
-		String sql = taskSqlBean.getQuerySql();
-		JSONObject result = nameJdbcTemplate.query(sql, getParamMapFromCondition(condition),
-				new ResultSetExtractor<JSONObject>() {
-					@Override
-					public JSONObject extractData(ResultSet rs) throws SQLException, DataAccessException {
-						JSONObject result = new JSONObject();
-						ResultSetMetaData rsmd = rs.getMetaData();
-						StringBuilder columns = new StringBuilder();
-						for (int i = 0; i < rsmd.getColumnCount(); i++) {
-							columns.append(rsmd.getColumnName(i + 1).toUpperCase());
-							columns.append(";");
-						}
-						if (columns.length() > 0) {
-							columns.deleteCharAt(columns.length() - 1);
-						}
-						JSONArray results = new JSONArray();
-						while (rs.next()) {
-							JSONObject resultJson = new JSONObject();
-							for (String column : columns.toString().split(";")) {
-								resultJson.put(column, rs.getObject(column));
-							}
-							results.add(resultJson);
-						}
-						if (results.size() == 0) {
-							return null;
-						}
-						result.put("columns", columns.toString());
-						result.put("data", results);
-						return result;
-					}
-				});
-		if (log.isInfoEnabled()) {
-			int size = 0;
-			if (result != null && result.getJSONArray("data") != null) {
-				size = result.getJSONArray("data").size();
-			}
-			log.info("TaskSql[{}] getSqlResultJsonObject get {} records, cost:{}", taskSqlBean.getId(), size,
-					(System.currentTimeMillis() - start));
-		}
-
-		return result;
-	}
-
-	private void prepare(String srcCols, final TaskSqlBean taskSqlBean, JdbcTemplate template) {
-		long start = System.currentTimeMillis();
-		final Collection<String> srcColumnsCollection = Arrays.asList(srcCols.split(";"));
-		Map<String, List<String>> targetTableColumns = template
-				.execute(new ConnectionCallback<Map<String, List<String>>>() {
-					@Override
-					public Map<String, List<String>> doInConnection(Connection con)
-							throws SQLException, DataAccessException {
-						Map<String, List<String>> tColumns = new HashMap<String, List<String>>();
-						DatabaseMetaData dmd = con.getMetaData();
-						ResultSet rs = dmd.getColumns(null, dmd.getUserName(),
-								taskSqlBean.getTargetTable().toUpperCase(), null);
-						List<String> columns = new ArrayList<>();
-						while (rs.next()) {
-							String column = rs.getString("COLUMN_NAME").toUpperCase();
-							// 只保留对应的列
-							if (srcColumnsCollection.contains(column)) {
-								columns.add(column);
-							}
-						}
-						tColumns.put("columns", columns);
-						try {
-							rs.close();
-						} catch (Exception e) {
-
-						}
-						rs = dmd.getPrimaryKeys(null, dmd.getUserName(), taskSqlBean.getTargetTable().toUpperCase());
-						List<String> keys = new ArrayList<>();
-						while (rs.next()) {
-							String key = rs.getString(4);
-							if (srcColumnsCollection.contains(key)) {
-								keys.add(key);
-							}
-						}
-						tColumns.put("keys", keys);
-						try {
-							rs.close();
-						} catch (Exception e) {
-
-						}
-						return tColumns;
-					}
-				});
-		List<String> tableColumns = targetTableColumns.get("columns");
-		taskSqlBean.setColumns(StringUtils.collectionToDelimitedString(tableColumns, ","));
-		List<String> keys = targetTableColumns.get("keys");
-		StringBuilder insertSql = new StringBuilder();
-		StringBuilder insertParaSql = new StringBuilder();
-		StringBuilder updateSql = new StringBuilder();
-		insertSql.append("INSERT INTO ").append(taskSqlBean.getTargetTable()).append("(");
-		updateSql.append("UPDATE ").append(taskSqlBean.getTargetTable()).append(" SET ");
-		for (int i = 0; i < tableColumns.size(); i++) {
-			insertSql.append(tableColumns.get(i)).append(",");
-			insertParaSql.append(":").append(tableColumns.get(i)).append(",");
-			if (!keys.contains(tableColumns.get(i))) {
-				updateSql.append(tableColumns.get(i)).append("=").append(":").append(tableColumns.get(i)).append(",");
-			}
-		}
-		insertSql.deleteCharAt(insertSql.length() - 1);
-		insertParaSql.deleteCharAt(insertParaSql.length() - 1);
-		updateSql.deleteCharAt(updateSql.length() - 1);
-		updateSql.append(" WHERE ");
-		if (keys.size() > 0) {
-			for (int i = 0; i < keys.size(); i++) {
-				if (i != 0) {
-					updateSql.append(" AND ");
-				}
-				updateSql.append(keys.get(i)).append(" = :").append(keys.get(i));
-			}
-		} else {
-			updateSql = null;
-		}
-
-		insertSql.append(")VALUES(").append(insertParaSql);
-		insertSql.append(")");
-		taskSqlBean.setInsertSql(insertSql.toString());
-		taskSqlBean.setUpdateSql(String.valueOf(updateSql));
-		taskSqlBean.setRefreshSql(TaskSqlBean.REFRESH_SQL_FALSE);
-		updateByPrimaryKey(taskSqlBean);
-		log.info("SqlTask[]do {} sql task prepare finished, cost:{}", taskSqlBean.getId(),
-				(System.currentTimeMillis() - start));
-	}
-
-	public static String listToString(List<String> stringList) {
-		if (stringList == null) {
-			return null;
-		}
-		StringBuilder result = new StringBuilder();
-		boolean flag = false;
-		for (String string : stringList) {
-			if (flag) {
-				result.append(",");
-			} else {
-				flag = true;
-			}
-			result.append(string);
-		}
-		return result.toString();
-	}
-
-	/**
-	 * 结果同步到目标源
-	 * 
-	 * @param taskSqlBean
-	 * @param result
-	 * @return
-	 */
-	private int runTaskSqlWithJdbcTemplate(final TaskBean t, final TaskSqlBean taskSqlBean, JSONObject result) {
-		try {
-			// 此处应在插入或更新失败时回滚,并把查询结果以文件方式保存,留待以后再执行此任务;
-			String dsid = taskSqlBean.getTargetConn();
-			DataSourceBean dsb = dataSourceService.selectByPrimaryKey(dsid);
-			if (null == dsb) {
-				throw new RuntimeException("数据源获取失败:" + dsid);
-			}
-			JdbcTemplate template = JdbcTemplateUtils.getJdbcTemplate(dsb);
-			if (TaskSqlBean.REFRESH_SQL_TRUE.equals(taskSqlBean.getRefreshSql())) {
-				prepare(result.getString("columns"), taskSqlBean, template);
-			}
-			JSONArray data = (JSONArray) result.get("data");
-			int runResult = -1;
-			DataSourceTransactionManager transactionManager = new DataSourceTransactionManager(
-					template.getDataSource());
-			DefaultTransactionDefinition def = new DefaultTransactionDefinition();
-			TransactionStatus status = transactionManager.getTransaction(def);
-			try {
-				runResult = TaskSqlBean.MODE_ALL.equals(taskSqlBean.getMode())
-						? doAllCommit(data, taskSqlBean, template) : doOneCommit(data, taskSqlBean, template);
-				transactionManager.commit(status);
-			} catch (Exception e) {
-				log.error("datasource[{}] commit error:{}", dsid, e.getMessage());
-				// 回滚事务
-				transactionManager.rollback(status);
-				// 抛出异常到外层进行缓存处理
-				throw e;
-			}
-			return runResult;
-		} catch (Exception e) {
-			log.error("SqlTask[{}] 执行插入失败:{}", t.getCode(), e.getMessage());
-			e.printStackTrace();
-			saveCache(t, taskSqlBean, result);
-			return -1;
-		}
-	}
-
-	/**
-	 * 处理事务提交
-	 * 
-	 * @param data
-	 * @param insertSql
-	 * @param updateSql
-	 * @return
-	 */
-	private int doOneCommit(JSONArray data, TaskSqlBean taskSqlBean, JdbcTemplate template) {
-		long start = System.currentTimeMillis();
-		String insertSql = taskSqlBean.getInsertSql();
-		String updateSql = taskSqlBean.getUpdateSql();
-		List<String> tableColumns = Arrays.asList(taskSqlBean.getColumns().split(","));
-		NamedParameterJdbcTemplate nameJdbcTemplate = new NamedParameterJdbcTemplate(template);
-		for (int i = 0; i < data.size(); i++) {
-			Map<String, Object> param = new HashMap<>();
-			JSONObject jo = data.getJSONObject(i);
-			for (String col : tableColumns) {
-				param.put(col, jo.get(col));
-			}
-			int count = nameJdbcTemplate.update(updateSql, new MapSqlParameterSource(param));
-			if (count == 0) {
-				nameJdbcTemplate.update(insertSql, param);
-			}
-		}
-		log.info("SqlTask[{}] doCommit {} records cost:{}", taskSqlBean.getId(), data.size(),
-				System.currentTimeMillis() - start);
-		return 0;
-	}
-
-	/**
-	 * 处理事务提交
-	 * 
-	 * @param data
-	 * @param insertSql
-	 * @param updateSql
-	 * @return
-	 */
-	private int doAllCommit(JSONArray data, TaskSqlBean taskSqlBean, JdbcTemplate template) {
-		long start = System.currentTimeMillis();
-		String insertSql = taskSqlBean.getInsertSql();
-		List<String> tableColumns = Arrays.asList(taskSqlBean.getColumns().split(","));
-		NamedParameterJdbcTemplate nameJdbcTemplate = new NamedParameterJdbcTemplate(template);
-		List<SqlParameterSource> params = new ArrayList<>();
-		for (int i = 0; i < data.size(); i++) {
-			Map<String, Object> param = new HashMap<>();
-			JSONObject jo = data.getJSONObject(i);
-			for (String col : tableColumns) {
-				param.put(col, jo.get(col));
-			}
-			params.add(new MapSqlParameterSource(param));
-		}
-		SqlParameterSource[] sqlParams = new SqlParameterSource[params.size()];
-		String deleteAllSql = "DELETE FROM " + taskSqlBean.getTargetTable();
-		Map<String, ?> paramMap = new HashMap<>();
-		nameJdbcTemplate.update(deleteAllSql, paramMap);
-		log.info("SqlTask[{}] delete all:{}", taskSqlBean.getId(), deleteAllSql);
-		nameJdbcTemplate.batchUpdate(insertSql, params.toArray(sqlParams));
-		log.info("SqlTask[{}] update {} records", taskSqlBean.getId(), data.size());
-		log.info("SqlTask[{}] doAllCommit {} records cost:{}", taskSqlBean.getId(), data.size(),
-				System.currentTimeMillis() - start);
-		return 0;
-	}
-
-	private void saveCache(TaskBean t, TaskSqlBean ts, JSONObject result) {
-		long start = System.currentTimeMillis();
-		String fileName = ts.getId() + "-" + System.currentTimeMillis();
-		TaskCacheBean cacheBean = new TaskCacheBean();
-		cacheBean.setAvalidCacheFolder(t.getCacheFolder());
-		cacheBean.setCacheData(result);
-		cacheBean.setFileName(fileName);
-		cacheBeanService.writeCache(cacheBean);
-		t.setCacheUse(TaskBean.CACHE_USE);
-		taskService.updateByPrimaryKey(t);
-		log.info("SqlTask[] saveCache cost:{}", t.getCode(), System.currentTimeMillis() - start);
-	}
-
-}

+ 0 - 57
xtdsp/trunk/src/main/java/com/xt/dsp/system/BaseMapper.java

@@ -1,57 +0,0 @@
-package com.xt.dsp.system;
-
-import java.util.List;
-
-/**
- * Mapper基类
- * 
- * @author 袁晓冬
- *
- * @param <T>
- */
-public interface BaseMapper<T> {
-
-    /**
-     * 根据主键物理删除记录
-     * 
-     * @param id
-     *            String
-     * @return int
-     */
-    int deleteByPrimaryKey(String id);
-
-    /**
-     * 新增记录
-     * 
-     * @param record
-     *            T
-     * @return int
-     */
-    int insert(T record);
-
-    /**
-     * 根据主键查找记录
-     * 
-     * @param id
-     *            String
-     * @return T
-     */
-    T selectByPrimaryKey(String id);
-
-    /**
-     * 检索所有记录,包括记录状态为删除的记录
-     * 
-     * @return List<T>
-     */
-    List<T> selectAll();
-
-    /**
-     * 根据主键更新记录
-     * 
-     * @param record
-     *            T
-     * @return
-     */
-    int updateByPrimaryKey(T record);
-
-}

+ 0 - 192
xtdsp/trunk/src/main/java/com/xt/dsp/system/DataSourceFactory.java

@@ -1,192 +0,0 @@
-package com.xt.dsp.system;
-
-import java.io.IOException;
-import java.sql.SQLException;
-import java.util.HashMap;
-import java.util.Map;
-import java.util.Properties;
-
-import javax.sql.DataSource;
-
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-import org.springframework.beans.factory.FactoryBean;
-import org.springframework.beans.factory.InitializingBean;
-import org.springframework.core.io.Resource;
-import org.springframework.core.io.support.EncodedResource;
-import org.springframework.core.io.support.PropertiesLoaderUtils;
-
-import com.alibaba.druid.pool.DruidDataSource;
-
-public class DataSourceFactory implements FactoryBean<DataSource>, InitializingBean {
-	Logger logger = LoggerFactory.getLogger(DataSourceFactory.class);
-	private Resource[] properties;
-	private DataSource ds;
-	private String fileEncoding;
-	private String dsid;
-	private static Map<String, DruidDataSource> dsMaps = new HashMap<String, DruidDataSource>();
-
-	public void setDsid(String dsid) {
-		this.dsid = dsid;
-	}
-
-	/** 连接池数据源类型 */
-	private String dsType = "com.alibaba.druid.pool.DruidDataSource";
-
-	public void close() {
-		if (ds instanceof DruidDataSource) {
-			if (dsMaps.containsKey(dsid)) {
-				dsMaps.remove(dsid);
-			}
-			((DruidDataSource) ds).close();
-		}
-	}
-
-	public void init() {
-		if (ds instanceof DruidDataSource) {
-			try {
-				((DruidDataSource) ds).init();
-				dsMaps.put(this.dsid, (DruidDataSource) ds);
-			} catch (SQLException e) {
-				e.printStackTrace();
-			}
-		}
-	}
-
-	@Override
-	public DataSource getObject() throws Exception {
-		return ds;
-	}
-
-	@Override
-	public Class<?> getObjectType() {
-		return DataSource.class;
-	}
-
-	@Override
-	public boolean isSingleton() {
-		return true;
-	}
-
-	private void loadProperties(Properties props) {
-		for (Resource location : this.properties) {
-			if (logger.isInfoEnabled()) {
-				logger.info("Loading properties file from " + location);
-			}
-			try {
-				PropertiesLoaderUtils.fillProperties(props, new EncodedResource(location, this.fileEncoding));
-			} catch (IOException e) {
-				e.printStackTrace();
-			}
-		}
-
-	}
-
-	public void afterPropertiesSet(Properties properties) {
-		if (dsType.equals("com.alibaba.druid.pool.DruidDataSource")) {
-			DruidDataSource druidDataSource = null;
-			if (dsMaps.containsKey(this.dsid)) {
-				this.ds = dsMaps.get(this.dsid);
-				return;
-			}
-			druidDataSource = new DruidDataSource();
-			druidDataSource.configFromPropety(properties);
-			{
-				String property = properties.getProperty("url");
-				if (property != null && property.length() > 0) {
-					druidDataSource.setUrl(property);
-				}
-			}
-			{
-				String driverClassName = properties.getProperty("driverClassName");
-				druidDataSource.setDriverClassName(driverClassName);
-			}
-			{
-				String property = properties.getProperty("username");
-				if (property != null && property.length() > 0) {
-					druidDataSource.setUsername(property);
-				}
-			}
-			{
-				String property = properties.getProperty("password");
-				if (property != null && property.length() > 0) {
-					druidDataSource.setPassword(property);
-				}
-			}
-			{
-				String property = properties.getProperty("initialSize");
-				if (property != null && property.length() > 0) {
-					druidDataSource.setInitialSize(Integer.parseInt(property));
-				}
-			}
-			{
-				String property = properties.getProperty("minIdle");
-				if (property != null && property.length() > 0) {
-					druidDataSource.setMinIdle(Integer.parseInt(property));
-				}
-			}
-			{
-				String property = properties.getProperty("maxActive");
-				if (property != null && property.length() > 0) {
-					druidDataSource.setMaxActive(Integer.parseInt(property));
-				}
-			}
-			{
-				String property = properties.getProperty("timeBetweenEvictionRunsMillis");
-				if (property != null && property.length() > 0) {
-					druidDataSource.setTimeBetweenEvictionRunsMillis(Long.parseLong(property));
-				}
-			}
-			{
-				String property = properties.getProperty("minEvictableIdleTimeMillis");
-				if (property != null && property.length() > 0) {
-					druidDataSource.setMinEvictableIdleTimeMillis(Integer.parseInt(property));
-				}
-			}
-			{
-				String property = properties.getProperty("testOnReturn");
-				if ("true".equals(property)) {
-					druidDataSource.setTestOnReturn(true);
-				} else if ("false".equals(property)) {
-					druidDataSource.setTestOnReturn(false);
-				}
-			}
-			{
-				String property = properties.getProperty("poolPreparedStatements");
-				if ("true".equals(property)) {
-					druidDataSource.setPoolPreparedStatements(true);
-				} else if ("false".equals(property)) {
-					druidDataSource.setPoolPreparedStatements(false);
-				}
-			}
-			{
-				String property = properties.getProperty("maxPoolPreparedStatementPerConnectionSize");
-				if (property != null && property.length() > 0) {
-					druidDataSource.setMaxPoolPreparedStatementPerConnectionSize(Integer.parseInt(property));
-				}
-			}
-			{
-				String validationQuery = properties.getProperty("validationQuery");
-				if (validationQuery != null && validationQuery.length() > 0) {
-					druidDataSource.setValidationQuery(validationQuery);
-				}
-			}
-			ds = druidDataSource;
-		}
-	}
-
-	@Override
-	public void afterPropertiesSet() throws Exception {
-		Properties properties = new Properties();
-		loadProperties(properties);
-		afterPropertiesSet(properties);
-	}
-
-	public void setDsType(String dsType) {
-		this.dsType = dsType;
-	}
-
-	public void setProperties(Resource[] properties) {
-		this.properties = properties;
-	}
-}

+ 0 - 49
xtdsp/trunk/src/main/java/com/xt/dsp/system/InitServlet.java

@@ -1,49 +0,0 @@
-package com.xt.dsp.system;
-
-import javax.servlet.ServletException;
-import javax.servlet.http.HttpServlet;
-
-import org.apache.log4j.Logger;
-import org.quartz.Scheduler;
-import org.quartz.SchedulerException;
-import org.springframework.web.context.WebApplicationContext;
-import org.springframework.web.context.support.WebApplicationContextUtils;
-
-import com.xt.dsp.job.CommonJobListener;
-import com.xt.dsp.service.JobService;
-
-/**
- * 系统初始化处理
- * 
- * @author 袁晓冬
- */
-public class InitServlet extends HttpServlet {
-	protected Logger logger = Logger.getLogger(getClass());
-
-	private static final long serialVersionUID = 1L;
-
-	/**
-	 * 系统初始化处理
-	 */
-	@Override
-	public void init() throws ServletException {
-		super.init();
-		System.err.println("----------System Init------------");
-		try {
-			initSchedule();
-		} catch (Exception e) {
-			System.err.println("系统初始化异常:" + e.getMessage());
-		}
-	}
-
-	private void initSchedule() throws SchedulerException {
-		WebApplicationContext wac = WebApplicationContextUtils
-				.getRequiredWebApplicationContext(this.getServletContext());
-		Scheduler scheduler = (Scheduler) wac.getBean("xtdspJobScheduler");
-		CommonJobListener jobListener = wac.getBean(CommonJobListener.class);
-		scheduler.getListenerManager().addJobListener(jobListener);
-		JobService jobService = wac.getBean(JobService.class);
-		// 启动
-		jobService.start();
-	}
-}

+ 0 - 68
xtdsp/trunk/src/main/resources/com/xt/dsp/mappers/DataSourceBeanMapper.xml

@@ -1,68 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" ?>
-<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd" >
-<mapper namespace="com.xt.dsp.mappers.DataSourceBeanMapper" >
-  <resultMap id="BaseResultMap" type="com.xt.dsp.model.DataSourceBean" >
-    <id column="ID" property="id" jdbcType="VARCHAR" />
-    <result column="URL" property="url" jdbcType="VARCHAR" />
-    <result column="DRIVERCLASSNAME" property="driverclassname" jdbcType="VARCHAR" />
-    <result column="USERNAME" property="username" jdbcType="VARCHAR" />
-    <result column="PASSWORD" property="password" jdbcType="VARCHAR" />
-    <result column="INITIALSIZE" property="initialsize" jdbcType="VARCHAR" />
-    <result column="MINIDLE" property="minidle" jdbcType="VARCHAR" />
-    <result column="MAXACTIVE" property="maxactive" jdbcType="VARCHAR" />
-    <result column="TIMEBETWEENEVICTIONRUNSMILLIS" property="timebetweenevictionrunsmillis" jdbcType="VARCHAR" />
-    <result column="MINEVICTABLEIDLETIMEMILLIS" property="minevictableidletimemillis" jdbcType="VARCHAR" />
-    <result column="TESTONRETURN" property="testonreturn" jdbcType="VARCHAR" />
-    <result column="POOLPREPAREDSTATEMENTS" property="poolpreparedstatements" jdbcType="VARCHAR" />
-    <result column="MAXPOOLPREPAREDSTATEMENTPERCON" property="maxpoolpreparedstatementpercon" jdbcType="VARCHAR" />
-    <result column="VALIDATIONQUERY" property="validationquery" jdbcType="VARCHAR" />
-  </resultMap>
-  <delete id="deleteByPrimaryKey" parameterType="java.lang.String" >
-    delete from DSP_DATASOURCE
-    where ID = #{id,jdbcType=VARCHAR}
-  </delete>
-  <insert id="insert" parameterType="com.xt.dsp.model.DataSourceBean" >
-    insert into DSP_DATASOURCE (ID, URL, DRIVERCLASSNAME, 
-      USERNAME, PASSWORD, INITIALSIZE, 
-      MINIDLE, MAXACTIVE, TIMEBETWEENEVICTIONRUNSMILLIS, 
-      MINEVICTABLEIDLETIMEMILLIS, TESTONRETURN, 
-      POOLPREPAREDSTATEMENTS, MAXPOOLPREPAREDSTATEMENTPERCON, 
-      VALIDATIONQUERY)
-    values (#{id,jdbcType=VARCHAR}, #{url,jdbcType=VARCHAR}, #{driverclassname,jdbcType=VARCHAR}, 
-      #{username,jdbcType=VARCHAR}, #{password,jdbcType=VARCHAR}, #{initialsize,jdbcType=VARCHAR}, 
-      #{minidle,jdbcType=VARCHAR}, #{maxactive,jdbcType=VARCHAR}, #{timebetweenevictionrunsmillis,jdbcType=VARCHAR}, 
-      #{minevictableidletimemillis,jdbcType=VARCHAR}, #{testonreturn,jdbcType=VARCHAR}, 
-      #{poolpreparedstatements,jdbcType=VARCHAR}, #{maxpoolpreparedstatementpercon,jdbcType=VARCHAR}, 
-      #{validationquery,jdbcType=VARCHAR})
-  </insert>
-  <update id="updateByPrimaryKey" parameterType="com.xt.dsp.model.DataSourceBean" >
-    update DSP_DATASOURCE
-    set URL = #{url,jdbcType=VARCHAR},
-      DRIVERCLASSNAME = #{driverclassname,jdbcType=VARCHAR},
-      USERNAME = #{username,jdbcType=VARCHAR},
-      PASSWORD = #{password,jdbcType=VARCHAR},
-      INITIALSIZE = #{initialsize,jdbcType=VARCHAR},
-      MINIDLE = #{minidle,jdbcType=VARCHAR},
-      MAXACTIVE = #{maxactive,jdbcType=VARCHAR},
-      TIMEBETWEENEVICTIONRUNSMILLIS = #{timebetweenevictionrunsmillis,jdbcType=VARCHAR},
-      MINEVICTABLEIDLETIMEMILLIS = #{minevictableidletimemillis,jdbcType=VARCHAR},
-      TESTONRETURN = #{testonreturn,jdbcType=VARCHAR},
-      POOLPREPAREDSTATEMENTS = #{poolpreparedstatements,jdbcType=VARCHAR},
-      MAXPOOLPREPAREDSTATEMENTPERCON = #{maxpoolpreparedstatementpercon,jdbcType=VARCHAR},
-      VALIDATIONQUERY = #{validationquery,jdbcType=VARCHAR}
-    where ID = #{id,jdbcType=VARCHAR}
-  </update>
-  <select id="selectByPrimaryKey" resultMap="BaseResultMap" parameterType="java.lang.String" >
-    select ID, URL, DRIVERCLASSNAME, USERNAME, PASSWORD, INITIALSIZE, MINIDLE, MAXACTIVE, 
-    TIMEBETWEENEVICTIONRUNSMILLIS, MINEVICTABLEIDLETIMEMILLIS, TESTONRETURN, POOLPREPAREDSTATEMENTS, 
-    MAXPOOLPREPAREDSTATEMENTPERCON, VALIDATIONQUERY
-    from DSP_DATASOURCE
-    where ID = #{id,jdbcType=VARCHAR}
-  </select>
-  <select id="selectAll" resultMap="BaseResultMap" >
-    select ID, URL, DRIVERCLASSNAME, USERNAME, PASSWORD, INITIALSIZE, MINIDLE, MAXACTIVE, 
-    TIMEBETWEENEVICTIONRUNSMILLIS, MINEVICTABLEIDLETIMEMILLIS, TESTONRETURN, POOLPREPAREDSTATEMENTS, 
-    MAXPOOLPREPAREDSTATEMENTPERCON, VALIDATIONQUERY
-    from DSP_DATASOURCE
-  </select>
-</mapper>

+ 0 - 60
xtdsp/trunk/src/main/resources/com/xt/dsp/mappers/JobBeanMapper.xml

@@ -1,60 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" ?>
-<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd" >
-<mapper namespace="com.xt.dsp.mappers.JobBeanMapper" >
-  <resultMap id="BaseResultMap" type="com.xt.dsp.model.JobBean" >
-    <id column="ID" property="id" jdbcType="VARCHAR" />
-    <result column="NAME" property="name" jdbcType="VARCHAR" />
-    <result column="CREATE_TIME" property="createTime" jdbcType="TIMESTAMP" />
-    <result column="START_TIME" property="startTime" jdbcType="TIMESTAMP" />
-    <result column="END_TIME" property="endTime" jdbcType="TIMESTAMP" />
-    <result column="CIRCLE" property="circle" jdbcType="CHAR" />
-    <result column="RESULT" property="result" jdbcType="VARCHAR" />
-    <result column="INTERVAL" property="interval" jdbcType="DECIMAL" />
-    <result column="STATUS" property="status" jdbcType="VARCHAR" />
-    <result column="PARAM" property="param" jdbcType="VARCHAR" />
-    <result column="CRON_EXPRESSION" property="cronExpression" jdbcType="VARCHAR" />
-    <result column="CODE" property="code" jdbcType="VARCHAR" />
-  </resultMap>
-  <delete id="deleteByPrimaryKey" parameterType="java.lang.String" >
-    delete from DSP_JOB
-    where ID = #{id,jdbcType=VARCHAR}
-  </delete>
-  <insert id="insert" parameterType="com.xt.dsp.model.JobBean" >
-    insert into DSP_JOB (ID, NAME, CREATE_TIME, 
-      START_TIME, END_TIME, CIRCLE, 
-      RESULT, INTERVAL, STATUS, 
-      PARAM, CRON_EXPRESSION, CODE
-      )
-    values (#{id,jdbcType=VARCHAR}, #{name,jdbcType=VARCHAR}, #{createTime,jdbcType=TIMESTAMP}, 
-      #{startTime,jdbcType=TIMESTAMP}, #{endTime,jdbcType=TIMESTAMP}, #{circle,jdbcType=CHAR}, 
-      #{result,jdbcType=VARCHAR}, #{interval,jdbcType=DECIMAL}, #{status,jdbcType=VARCHAR}, 
-      #{param,jdbcType=VARCHAR}, #{cronExpression,jdbcType=VARCHAR}, #{code,jdbcType=VARCHAR}
-      )
-  </insert>
-  <update id="updateByPrimaryKey" parameterType="com.xt.dsp.model.JobBean" >
-    update DSP_JOB
-    set NAME = #{name,jdbcType=VARCHAR},
-      CREATE_TIME = #{createTime,jdbcType=TIMESTAMP},
-      START_TIME = #{startTime,jdbcType=TIMESTAMP},
-      END_TIME = #{endTime,jdbcType=TIMESTAMP},
-      CIRCLE = #{circle,jdbcType=CHAR},
-      RESULT = #{result,jdbcType=VARCHAR},
-      INTERVAL = #{interval,jdbcType=DECIMAL},
-      STATUS = #{status,jdbcType=VARCHAR},
-      PARAM = #{param,jdbcType=VARCHAR},
-      CRON_EXPRESSION = #{cronExpression,jdbcType=VARCHAR},
-      CODE = #{code,jdbcType=VARCHAR}
-    where ID = #{id,jdbcType=VARCHAR}
-  </update>
-  <select id="selectByPrimaryKey" resultMap="BaseResultMap" parameterType="java.lang.String" >
-    select ID, NAME, CREATE_TIME, START_TIME, END_TIME, CIRCLE, RESULT, INTERVAL, STATUS, 
-    PARAM, CRON_EXPRESSION, CODE
-    from DSP_JOB
-    where ID = #{id,jdbcType=VARCHAR}
-  </select>
-  <select id="selectAll" resultMap="BaseResultMap" >
-    select ID, NAME, CREATE_TIME, START_TIME, END_TIME, CIRCLE, RESULT, INTERVAL, STATUS, 
-    PARAM, CRON_EXPRESSION, CODE
-    from DSP_JOB
-  </select>
-</mapper>

+ 0 - 52
xtdsp/trunk/src/main/resources/com/xt/dsp/mappers/TaskBeanMapper.xml

@@ -1,52 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" ?>
-<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd" >
-<mapper namespace="com.xt.dsp.mappers.TaskBeanMapper" >
-  <resultMap id="BaseResultMap" type="com.xt.dsp.model.TaskBean" >
-    <id column="ID" property="id" jdbcType="VARCHAR" />
-    <result column="NAME" property="name" jdbcType="VARCHAR" />
-    <result column="CODE" property="code" jdbcType="VARCHAR" />
-    <result column="JOB_CODE" property="jobCode" jdbcType="VARCHAR" />
-    <result column="TYPE" property="type" jdbcType="CHAR" />
-    <result column="CACHE_FOLDER" property="cacheFolder" jdbcType="VARCHAR" />
-    <result column="CACHE_USE" property="cacheUse" jdbcType="CHAR" />
-  </resultMap>
-  <delete id="deleteByPrimaryKey" parameterType="java.lang.String" >
-    delete from DSP_TASK
-    where ID = #{id,jdbcType=VARCHAR}
-  </delete>
-  <insert id="insert" parameterType="com.xt.dsp.model.TaskBean" >
-    insert into DSP_TASK (ID, NAME, CODE, 
-      JOB_CODE, TYPE,CACHE_FOLDER)
-    values (#{id,jdbcType=VARCHAR}, #{name,jdbcType=VARCHAR}, #{code,jdbcType=VARCHAR}, 
-      #{jobCode,jdbcType=VARCHAR}, #{type,jdbcType=CHAR},#{cacheFolder,jdbcType=VARCHAR},#{cacheUse,jdbcType=CHAR})
-  </insert>
-  <update id="updateByPrimaryKey" parameterType="com.xt.dsp.model.TaskBean" >
-    update DSP_TASK
-    set NAME = #{name,jdbcType=VARCHAR},
-      CODE = #{code,jdbcType=VARCHAR},
-      JOB_CODE = #{jobCode,jdbcType=VARCHAR},
-      TYPE = #{type,jdbcType=CHAR},
-      CACHE_FOLDER = #{cacheFolder,jdbcType=VARCHAR},
-      CACHE_USE = #{cacheUse,jdbcType=CHAR}
-    where ID = #{id,jdbcType=VARCHAR}
-  </update>
-  <select id="selectByPrimaryKey" resultMap="BaseResultMap" parameterType="java.lang.String" >
-    select ID, NAME, CODE, JOB_CODE, TYPE,CACHE_FOLDER,CACHE_USE
-    from DSP_TASK
-    where ID = #{id,jdbcType=VARCHAR}
-  </select>
-  <select id="selectByJobCode" resultMap="BaseResultMap" parameterType="java.lang.String" >
-    select ID, NAME, CODE, JOB_CODE, TYPE,CACHE_FOLDER,CACHE_USE
-    from DSP_TASK
-    where JOB_CODE = #{jobcode,jdbcType=VARCHAR}
-  </select>
-  <select id="selectByCode" resultMap="BaseResultMap" parameterType="java.lang.String" >
-    select ID, NAME, CODE, JOB_CODE, TYPE,CACHE_FOLDER,CACHE_USE
-    from DSP_TASK
-    where CODE = #{jobcode,jdbcType=VARCHAR}
-  </select>
-  <select id="selectAll" resultMap="BaseResultMap" >
-    select ID, NAME, CODE, JOB_CODE, TYPE,CACHE_FOLDER,CACHE_USE
-    from DSP_TASK
-  </select>
-</mapper>

+ 0 - 61
xtdsp/trunk/src/main/resources/com/xt/dsp/mappers/TaskSqlBeanMapper.xml

@@ -1,61 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" ?>
-<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd" >
-<mapper namespace="com.xt.dsp.mappers.TaskSqlBeanMapper" >
-  <resultMap id="BaseResultMap" type="com.xt.dsp.model.TaskSqlBean" >
-    <id column="ID" property="id" jdbcType="VARCHAR" />
-    <result column="TASK_CODE" property="taskCode" jdbcType="VARCHAR" />
-    <result column="SRC_CONN" property="srcConn" jdbcType="VARCHAR" />
-    <result column="TARGET_CONN" property="targetConn" jdbcType="VARCHAR" />
-    <result column="QUERY_SQL" property="querySql" jdbcType="VARCHAR" />
-    <result column="TARGET_TABLE" property="targetTable" jdbcType="VARCHAR" />
-    <result column="UPDATE_SQL" property="updateSql" jdbcType="VARCHAR" />
-    <result column="INSERT_SQL" property="insertSql" jdbcType="VARCHAR" />
-    <result column="REFRESH_SQL" property="refreshSql" jdbcType="VARCHAR" />
-    <result column="COLUMNS" property="columns" jdbcType="VARCHAR" />
-    <result column="SYN_MODE" property="mode" jdbcType="VARCHAR" />
-  </resultMap>
-  <delete id="deleteByPrimaryKey" parameterType="java.lang.String" >
-    delete from DSP_TASK_SQL
-    where ID = #{id,jdbcType=VARCHAR}
-  </delete>
-  <insert id="insert" parameterType="com.xt.dsp.model.TaskSqlBean" >
-    insert into DSP_TASK_SQL (ID, TASK_CODE, SRC_CONN, TARGET_CONN,QUERY_SQL, 
-       TARGET_TABLE,UPDATE_SQL,INSERT_SQL,REFRESH_SQL,COLUMNS,SYN_MODE
-      )
-    values (#{id,jdbcType=VARCHAR}, #{taskCode,jdbcType=VARCHAR}, #{srcConn,jdbcType=VARCHAR}, 
-      #{targetConn,jdbcType=VARCHAR}, #{querySql,jdbcType=VARCHAR}, #{targetTable,jdbcType=VARCHAR}, #{updateSql,jdbcType=VARCHAR},
-      #{insertSql,jdbcType=VARCHAR},#{refreshSql,jdbcType=VARCHAR},#{columns,jdbcType=VARCHAR},#{mode,jdbcType=VARCHAR}
-      )
-  </insert>
-  <update id="updateByPrimaryKey" parameterType="com.xt.dsp.model.TaskSqlBean" >
-    update DSP_TASK_SQL
-    set TASK_CODE = #{taskCode,jdbcType=VARCHAR},
-      SRC_CONN = #{srcConn,jdbcType=VARCHAR},
-      TARGET_CONN = #{targetConn,jdbcType=VARCHAR},
-      QUERY_SQL = #{querySql,jdbcType=VARCHAR},
-      TARGET_TABLE = #{targetTable,jdbcType=VARCHAR},
-      UPDATE_SQL = #{updateSql,jdbcType=VARCHAR},
-      INSERT_SQL = #{insertSql,jdbcType=VARCHAR},
-      REFRESH_SQL = #{refreshSql,jdbcType=VARCHAR},
-      COLUMNS = #{columns,jdbcType=VARCHAR},
-      SYN_MODE = #{mode,jdbcType=VARCHAR}
-    where ID = #{id,jdbcType=VARCHAR}
-  </update>
-  <select id="selectByPrimaryKey" resultMap="BaseResultMap" parameterType="java.lang.String" >
-    select ID, TASK_CODE, SRC_CONN, TARGET_CONN, TARGET_TABLE,QUERY_SQL, 
-       TARGET_TABLE,UPDATE_SQL,INSERT_SQL,REFRESH_SQL,COLUMNS,SYN_MODE
-    from DSP_TASK_SQL
-    where ID = #{id,jdbcType=VARCHAR}
-  </select>
-  <select id="selectByTaskCode" resultMap="BaseResultMap" parameterType="java.lang.String" >
-    select ID, TASK_CODE, SRC_CONN, TARGET_CONN, TARGET_TABLE,QUERY_SQL, 
-       TARGET_TABLE,UPDATE_SQL,INSERT_SQL,REFRESH_SQL,COLUMNS,SYN_MODE
-    from DSP_TASK_SQL
-    where TASK_CODE = #{taskCode,jdbcType=VARCHAR}
-  </select>
-  <select id="selectAll" resultMap="BaseResultMap" >
-    select ID, TASK_CODE, SRC_CONN, TARGET_CONN, TARGET_TABLE,QUERY_SQL, 
-       TARGET_TABLE,UPDATE_SQL,INSERT_SQL,REFRESH_SQL,COLUMNS,SYN_MODE
-    from DSP_TASK_SQL
-  </select>
-</mapper>

+ 0 - 33
xtdsp/trunk/src/main/resources/generatorConfig.xml

@@ -1,33 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE generatorConfiguration  PUBLIC "-//mybatis.org//DTD MyBatis Generator Configuration 1.0//EN"  "http://mybatis.org/dtd/mybatis-generator-config_1_0.dtd">
-<generatorConfiguration>
-	<context id="MysqlTables" targetRuntime="MyBatis3Simple">
-		<commentGenerator>
-			<property name="suppressAllComments" value="true" />
-		</commentGenerator>
-		<jdbcConnection driverClass="oracle.jdbc.driver.OracleDriver"
-			connectionURL="jdbc:oracle:thin:@192.168.57.36:1521:orcl" userId="xtdsp"
-			password="xtdsp">
-		</jdbcConnection>
-		<javaTypeResolver>
-			<property name="forceBigDecimals" value="false" />
-		</javaTypeResolver>
-		<javaModelGenerator targetPackage="com.xt.dsp.model"
-			targetProject="src/main/java">
-			<property name="enableSubPackages" value="true" />
-			<property name="trimStrings" value="true" />
-		</javaModelGenerator>
-		<sqlMapGenerator targetPackage="com.xt.dsp.mappers"
-			targetProject="src/main/resources">
-			<property name="enableSubPackages" value="true" />
-		</sqlMapGenerator>
-		<javaClientGenerator type="XMLMAPPER"
-			targetPackage="com.xt.dsp.mappers" targetProject="src/main/java">
-			<property name="enableSubPackages" value="true" />
-			<!-- <property name="rootInterface" value="com.yuanxd.trust.server.mappers.BaseMapper"/> -->
-		</javaClientGenerator>
-		<!-- <table tableName="DSP_JOB" domainObjectName="JobBean"></table> -->
-		<!-- <table tableName="DSP_TASK" domainObjectName="TaskBean"></table> -->
-		<!-- <table tableName="DSP_TASK_SQL" domainObjectName="TaskSqlBean"></table> -->
-		<table tableName="DSP_DATASOURCE" domainObjectName="DataSourceBean"></table>
-	</context>
-</generatorConfiguration>