소스 검색

项目名更新

xueli.xue 9 년 전
부모
커밋
cd32557db0
79개의 변경된 파일273개의 추가작업 그리고 835개의 파일을 삭제
  1. 11 4
      README.md
  2. 0 0
      db/tables_mysql(备份,请忽略).sql
  3. 0 0
      db/tables_xxl_job.sql
  4. 0 570
      doc/XXL-JOB1.3.x用户手册_20160522_2306.pdf
  5. 2 1
      xxl-job-admin/.gitignore
  6. 2 2
      xxl-job-admin/pom.xml
  7. 5 5
      xxl-job-admin/src/main/java/com/xxl/job/admin/controller/IndexController.java
  8. 6 6
      xxl-job-admin/src/main/java/com/xxl/job/admin/controller/JobCodeController.java
  9. 11 11
      xxl-job-admin/src/main/java/com/xxl/job/admin/controller/JobInfoController.java
  10. 9 9
      xxl-job-admin/src/main/java/com/xxl/job/admin/controller/JobLogController.java
  11. 1 1
      xxl-job-admin/src/main/java/com/xxl/job/admin/controller/annotation/PermessionLimit.java
  12. 1 1
      xxl-job-admin/src/main/java/com/xxl/job/admin/controller/interceptor/CookieInterceptor.java
  13. 3 3
      xxl-job-admin/src/main/java/com/xxl/job/admin/controller/interceptor/PermissionInterceptor.java
  14. 3 3
      xxl-job-admin/src/main/java/com/xxl/job/admin/controller/resolver/WebExceptionResolver.java
  15. 5 5
      xxl-job-admin/src/main/java/com/xxl/job/admin/core/callback/XxlJobLogCallbackServer.java
  16. 6 6
      xxl-job-admin/src/main/java/com/xxl/job/admin/core/callback/XxlJobLogCallbackServerHandler.java
  17. 1 1
      xxl-job-admin/src/main/java/com/xxl/job/admin/core/constant/Constants.java
  18. 1 0
      xxl-job-admin/src/main/java/com/xxl/job/admin/core/jobbean/LocalNomalJobBean.java
  19. 11 11
      xxl-job-admin/src/main/java/com/xxl/job/admin/core/jobbean/RemoteHttpJobBean.java
  20. 1 0
      xxl-job-admin/src/main/java/com/xxl/job/admin/core/jobbean/impl/DemoConcurrentJobBean.java
  21. 1 0
      xxl-job-admin/src/main/java/com/xxl/job/admin/core/jobbean/impl/DemoNomalJobBean.java
  22. 1 1
      xxl-job-admin/src/main/java/com/xxl/job/admin/core/model/ReturnT.java
  23. 1 1
      xxl-job-admin/src/main/java/com/xxl/job/admin/core/model/XxlJobInfo.java
  24. 1 1
      xxl-job-admin/src/main/java/com/xxl/job/admin/core/model/XxlJobLog.java
  25. 1 1
      xxl-job-admin/src/main/java/com/xxl/job/admin/core/model/XxlJobLogGlue.java
  26. 7 7
      xxl-job-admin/src/main/java/com/xxl/job/admin/core/thread/JobMonitorHelper.java
  27. 1 1
      xxl-job-admin/src/main/java/com/xxl/job/admin/core/util/CookieUtil.java
  28. 7 7
      xxl-job-admin/src/main/java/com/xxl/job/admin/core/util/DynamicSchedulerUtil.java
  29. 1 1
      xxl-job-admin/src/main/java/com/xxl/job/admin/core/util/MailUtil.java
  30. 1 1
      xxl-job-admin/src/main/java/com/xxl/job/admin/core/util/PropertiesUtil.java
  31. 3 2
      xxl-job-admin/src/main/java/com/xxl/job/admin/dao/IXxlJobInfoDao.java
  32. 2 2
      xxl-job-admin/src/main/java/com/xxl/job/admin/dao/IXxlJobLogDao.java
  33. 2 2
      xxl-job-admin/src/main/java/com/xxl/job/admin/dao/IXxlJobLogGlueDao.java
  34. 3 3
      xxl-job-admin/src/main/java/com/xxl/job/admin/dao/impl/XxlJobInfoDaoImpl.java
  35. 3 3
      xxl-job-admin/src/main/java/com/xxl/job/admin/dao/impl/XxlJobLogDaoImpl.java
  36. 3 3
      xxl-job-admin/src/main/java/com/xxl/job/admin/dao/impl/XxlJobLogGlueDaoImpl.java
  37. 1 11
      xxl-job-admin/src/main/resources/applicationcontext-base.xml
  38. 35 3
      xxl-job-admin/src/main/resources/applicationcontext-database.xml
  39. 1 1
      xxl-job-admin/src/main/resources/applicationcontext-trigger-db.xml
  40. 0 38
      xxl-job-admin/src/main/resources/applicationcontext-tx.xml
  41. 3 3
      xxl-job-admin/src/main/resources/mybatis-mapper/XxlJobInfoMapper.xml
  42. 2 2
      xxl-job-admin/src/main/resources/mybatis-mapper/XxlJobLogGlueMapper.xml
  43. 2 2
      xxl-job-admin/src/main/resources/mybatis-mapper/XxlJobLogMapper.xml
  44. 4 4
      xxl-job-admin/src/main/resources/springmvc-context.xml
  45. 2 2
      xxl-job-admin/src/test/java/com/xxl/job/dao/impl/XxlJobInfoTest.java
  46. 4 4
      xxl-job-admin/src/test/java/com/xxl/job/dao/impl/XxlJobLogTest.java
  47. 0 25
      xxl-job-client-demo/src/main/java/com/xxl/job/service/handler/DemoJobHandler.java
  48. 1 0
      xxl-job-core/.gitignore
  49. 1 1
      xxl-job-core/pom.xml
  50. 9 9
      xxl-job-core/src/main/java/com/xxl/job/core/executor/jetty/XxlJobExecutor.java
  51. 3 3
      xxl-job-core/src/main/java/com/xxl/job/core/executor/jetty/XxlJobExecutorHandler.java
  52. 0 0
      xxl-job-core/src/main/java/com/xxl/job/core/executor/servlet/XxlJobServlet.java
  53. 6 6
      xxl-job-core/src/main/java/com/xxl/job/core/glue/GlueFactory.java
  54. 1 1
      xxl-job-core/src/main/java/com/xxl/job/core/glue/cache/ICache.java
  55. 1 1
      xxl-job-core/src/main/java/com/xxl/job/core/glue/cache/LocalCache.java
  56. 1 1
      xxl-job-core/src/main/java/com/xxl/job/core/glue/loader/GlueLoader.java
  57. 5 5
      xxl-job-core/src/main/java/com/xxl/job/core/handler/HandlerRepository.java
  58. 6 6
      xxl-job-core/src/main/java/com/xxl/job/core/handler/HandlerThread.java
  59. 2 2
      xxl-job-core/src/main/java/com/xxl/job/core/handler/IJobHandler.java
  60. 1 1
      xxl-job-core/src/main/java/com/xxl/job/core/handler/annotation/JobHander.java
  61. 4 4
      xxl-job-core/src/main/java/com/xxl/job/core/handler/impl/GlueJobHandler.java
  62. 1 1
      xxl-job-core/src/main/java/com/xxl/job/core/log/XxlJobFileAppender.java
  63. 1 1
      xxl-job-core/src/main/java/com/xxl/job/core/util/HttpUtil.java
  64. 1 1
      xxl-job-core/src/main/java/com/xxl/job/core/util/IpUtil.java
  65. 1 1
      xxl-job-core/src/main/java/com/xxl/job/core/util/JacksonUtil.java
  66. 1 0
      xxl-job-executor-example/.gitignore
  67. 3 3
      xxl-job-executor-example/pom.xml
  68. 8 4
      xxl-job-executor-example/src/main/java/com/xxl/job/executor/loader/DbGlueLoader.java
  69. 2 2
      xxl-job-executor-example/src/main/java/com/xxl/job/executor/loader/dao/IXxlJobInfoDao.java
  70. 4 3
      xxl-job-executor-example/src/main/java/com/xxl/job/executor/loader/dao/impl/XxlJobInfoDaoImpl.java
  71. 1 1
      xxl-job-executor-example/src/main/java/com/xxl/job/executor/loader/dao/model/XxlJobInfo.java
  72. 32 0
      xxl-job-executor-example/src/main/java/com/xxl/job/executor/service/jobhandler/DemoJobHandler.java
  73. 0 2
      xxl-job-executor-example/src/main/resources/applicationcontext-database.xml
  74. 4 4
      xxl-job-executor-example/src/main/resources/applicationcontext-xxl-job.xml
  75. 0 0
      xxl-job-executor-example/src/main/resources/jdbc.properties
  76. 1 1
      xxl-job-executor-example/src/main/resources/log4j.xml
  77. 1 1
      xxl-job-executor-example/src/main/resources/mybatis-mapper/XxlJobInfoMapper.xml
  78. 0 0
      xxl-job-executor-example/src/main/webapp/WEB-INF/web.xml
  79. 0 0
      xxl-job-executor-example/src/main/webapp/index.html

+ 11 - 4
README.md

@@ -39,9 +39,9 @@ git.osc地址:http://git.oschina.net/xuxueli0323/xxl-job
 	5、支持“串行执行”,并行执行;
 	
 	说明:V1.2版本将系统架构按功能拆分为:
-		调度模块[xxl-job-admin]:负责管理调度信息,按照调度配置发出调度请求;
-		任务模块[xxl-job-client-demo]:负责接收调度请求并执行任务逻辑;任务模块可以方便的嵌入web项目,可以参考此demo;
-		通讯模块[xxl-job-client]:负责调度模块和任务模块之间的信息通讯;
+		调度模块(调度中心):负责管理调度信息,按照调度配置发出调度请求;
+		执行模块(执行器):负责接收调度请求并执行任务逻辑;
+		通讯模块:负责调度模块和任务模块之间的信息通讯;
 	优点:
 		解耦:任务模块提供任务接口,调度模块维护调度信息,业务相互独立;
 		高扩展性;
@@ -56,7 +56,13 @@ git.osc地址:http://git.oschina.net/xuxueli0323/xxl-job
 		“执行器” 模式简介:
 			BEAN模式执行器:每个执行器都是Spring的一个Bean实例,XXL-JOB通过注解@JobHander识别和调度执行器;
 			GLUE模式执行器:每个执行器对应一段代码,在线Web编辑和维护,动态编译生效,执行器负责加载GLUE代码和执行;
-		
+
+# 源码目录说明
+	/xxl-job-admin					【调度中心】:负责管理调度信息,按照调度配置发出调度请求;
+	/xxl-job-core					公共依赖
+	/xxl-job-executor-example	【执行器】:负责接收调度请求并执行任务逻辑;
+	/db		建表脚本
+	/doc	用户手册
 	
 # Tips
 	更多接入公司,欢迎在https://github.com/xuxueli/xxl-job/issues/1 登记。
@@ -64,4 +70,5 @@ git.osc地址:http://git.oschina.net/xuxueli0323/xxl-job
 	
 	
 ![image](http://images2015.cnblogs.com/blog/554415/201605/554415-20160513183306234-1939652116.png)
+
 技术的发展离不开你的支持,请作者喝杯咖啡吧!

+ 0 - 0
doc/db/tables_mysql(备份,请忽略).sql → db/tables_mysql(备份,请忽略).sql


+ 0 - 0
doc/db/tables_xxl_job.sql → db/tables_xxl_job.sql


+ 0 - 570
doc/XXL-JOB1.3.x用户手册_20160522_2306.pdf

@@ -1,570 +0,0 @@
-XXL-JOB 1.3 用户手册
-
-XXL-JOB 1.3 用户手册
-
-一 简介............................................................................................................................................... 2
-     1.1 背景......................................................................................................................................2
-     1.2 特点......................................................................................................................................2
-     1.3 发展......................................................................................................................................2
-     1.4 下载......................................................................................................................................3
-     1.5 环境......................................................................................................................................3
-
-二 快速入门.......................................................................................................................................4
-     2.1 初始化“调度数据库”......................................................................................................4
-     2.2 编译源码..............................................................................................................................5
-     2.3 配置部署“调度中心”......................................................................................................5
-     2.4 配置部署“执行器项目”..................................................................................................7
-     2.5 开发第一个任务“Hello World”...................................................................................... 9
-
-三 任务详解.....................................................................................................................................12
-     4.1 BEAN 模式任务...................................................................................................................12
-     4.3 GLUE 模式任务................................................................................................................... 13
-
-四 任务管理.....................................................................................................................................15
-     5.1 编辑任务信息....................................................................................................................15
-     5.2 编辑 GLUE 代码................................................................................................................. 15
-     5.3 恢复/暂停.......................................................................................................................... 16
-     5.4 手动触发一次调度............................................................................................................16
-     5.5 查看日志............................................................................................................................16
-     5.6 删除任务............................................................................................................................17
-     5.7 终止运行中的任务............................................................................................................17
-
-五 总体设计.....................................................................................................................................19
-     5.1 源码目录介绍....................................................................................................................19
-     5.2 “调度数据库”配置........................................................................................................19
-     5.2 架构设计............................................................................................................................21
-     6.3 调度模块............................................................................................................................22
-     6.4 任务模块............................................................................................................................24
-     6.5 通讯模块............................................................................................................................24
-
-七 其他............................................................................................................................................. 25
-     7.1 接入登记............................................................................................................................25
-     7.2 报告问题............................................................................................................................25
-
-github 地址:https://github.com/xuxueli/xxl-job
-技术交流群(仅作技术交流):367260654
-XXL-JOB 1.3 用户手册
-
-一 简介
-
-    1.1 背景
-
-     Quartz 作为开源作业调度中的佼佼者,是作业调度的首选。
-     非集群 Quartz 开发需要配置 Trigger,JobBean,配置 Corn 等等,虽然简单,但是流程
-较多;集群 Quartz 采用 API 的方式对任务进行管理,从而可以避免上述问题,但是同样存
-在以下问题:
-     问题一:调用 API 的的方式操作任务,不人性化;
-     问题二:需要持久化业务 QuartzJobBean 到底层数据表中,系统侵入性相当严重。
-     问题三:调度逻辑和 QuartzJobBean 耦合在同一个项目中,这将导致一个问题,
-在调度任务数量逐渐增多,同时调度任务逻辑逐渐加重的情况加,此时调度系统的性能
-将大大受限于业务;
-     为了解决上述问题,期望是能够创造一种全新的调度体验。新系统目标是:更易维护、
-更高的可用性和更好的伸缩性。这要求“调度”和“作业”进行解耦,同时支持友好的可视
-化管理。由此,我萌发了打造 XXL-JOB 的想法,
-
-    1.2 特点
-
-     1、简单:支持通过 Web 页面对任务进行 CRUD 操作,操作简单,一分钟上手;
-     2、动态:支持动态修改任务状态,动态暂停/恢复任务,即时生效;
-     3、服务 HA:任务信息持久化到 mysql 中,Job 服务天然支持集群,保证服务 HA;
-     4、任务 HA:某台 Job 服务挂掉,任务会平滑分配给其他的某一台存活服务,即使所有
-服务挂掉,重启时或补偿执行丢失任务;
-     5、一个任务只会在其中一台服务器上执行;
-     6、任务串行执行;
-     7、支持任务执行日志;
-     8、支持自定义参数;
-     9、支持任务失败次数超阈值邮件报警;
-     10、支持在线查看,执行器详细日志;
-     11、支持远程任务执行终止;
-     12、支持登录验证;
-
-    1.3 发展
-
-     我于 2015-11-28 在 github 上创建 XXL-JOB 项目仓库并提交第一个 commit,随之进行系
-统结构设计,UI 选型,交互设计……
-
-     于 2015-12-05 日 XXL-JOB 终 于 release 了 第一 个大 版 本 V1.0 , 随 后我 将之 发 布到
-OSCHINA,XXL-JOB 在 OSCHINA 上获得了@红薯的推荐,同期分别达到了 OSCHINA 的“热门
-动弹”排行第一和 git.oschina 的月热度排行第一,在此特别感谢红薯,感谢大家的关注和支
-持。
-
-github 地址:https://github.com/xuxueli/xxl-job
-技术交流群(仅作技术交流):367260654
-XXL-JOB 1.3 用户手册
-
-     于 2015-12 月中旬我将 XXL-JOB 发表到我司内部知识库,得到内部同事认可。于 2016-01
-月我司展开 XXL-JOB 的内部接入和定制工作,在此感谢袁某和尹某两位同事的贡献,同时也
-感谢内部其他给与关注与支持的同事。
-
-     我司大众点评已接入 XXL-JOB,内部别名《Ferrari》(Ferrari 基于 XXL-JOB 的 V1.1 版本
-定制而成,新接入应用推荐升级最新版本 V1.3)。自 2016-01-21 接入至 2016-05-20 为止,
-该系统已调度 40000 余次,表现优异。
-
-     至今,XXL-JOB 已接入多家公司的线上产品线,场景如电商业务,O2O 业务和大数据作
-业等等,欢迎大家使用,XXL-JOB 也将拥抱变化,持续发展。
-
-    1.4 下载
-
-     Github 地址:https://github.com/xuxueli/xxl-job
-     Git@OSC 地址:http://git.oschina.net/xuxueli0323/xxl-job
-     (我将会在两个 git 仓库同步发布最新代码)
-
-     (图 1.3:github 下载链接位置)
-     源码下载请前往 github 自行下载,下载位置见上图 1.3;
-
-    1.5 环境
-
-     Maven3
-     JDK1.7
-     Tomcat7
-     Mysql5.5
-
-github 地址:https://github.com/xuxueli/xxl-job
-技术交流群(仅作技术交流):367260654
-XXL-JOB 1.3 用户手册
-
-二 快速入门
-    2.1 初始化“调度数据库”
-
-     请下载项目源码并解压,然后前往“图 2.1A”所示目录,获取 SQL 脚本并执行,脚本
-文件位置:“源码解压根目录”\xxl-job\doc\db\tables_xxl_job.sql
-
-                                (图 2.1A:数据库建表 SQL 文件位置截图,)
-     正常情况下,应该生成(图 2.1B)中所示 14 张表。
-
-                                         (图 2.1B:调度数据库表一览)
-
-github 地址:https://github.com/xuxueli/xxl-job
-技术交流群(仅作技术交流):367260654
-XXL-JOB 1.3 用户手册
-
-    2.2 编译源码
-
-     解压源码,按照 maven 格式将源码导入 IDE(文档以 Eclipse 为例),更新项目 pom 依
-赖,maven 编译项目。
-
-     正常情况下,项目结构应该如图 2.2 所示,
-
-                                     (图 2.2:项目源码导入 Eclipse 截图)
-
-    2.3 配置部署“调度中心”
-
-     “调度中心”项目:xxl-job-admin
-     作用:统一管理任务调度平台上调度任务,负责触发调度执行。
-     A:配置调度中心 JDBC 链接:请在图 2.2A 所示位置配置 jdbc 链接地址,链接地址请保
-持和 2.1 章节 所创建的调度数据库的地址一致。
-
-                                       (图 2.2A:数据库 JDBC 配置截图)
-
-github 地址:https://github.com/xuxueli/xxl-job
-技术交流群(仅作技术交流):367260654
-XXL-JOB 1.3 用户手册
-
-     B:配置报警邮箱和登陆账号:请在图 2.2B 所示位置,设置自己的报警邮件发送邮箱和
-登陆账号密码。
-
-                                            (图 2.2B:系统配置截图)
-     C:配置“调度中心”日志回调端口:由于“调度中心”和“执行器”部署在不同机器,
-“执行器”会请求该端口回调通知任务执行情况。如图 2.2C 所示,默认回调服务端口号为
-8888。(此端口除非与现有端口冲突,可自行修改,否则请忽视)
-
-                                                       (图 2.2C)
-     部署项目:如果已经正确进行上述配置,可将项目部署到 eclipse 下的 tomcat 服务器中,
-如图 2.2D 所示。或者,将“调度中心”项目导出 war 包单独部署。
-
-github 地址:https://github.com/xuxueli/xxl-job
-技术交流群(仅作技术交流):367260654
-XXL-JOB 1.3 用户手册
-
-                                         (图 2.2D:调度中心部署截图)
-     访问链接:http://localhost:8080/xxl-job-admin/ ,登陆界面如图 2.2E 所示。
-     至此“调度中心”项目已经部署结束。
-
-                                      (图 2.2E:“调度中心”登陆界面)
-
-    2.4 配置部署“执行器项目”
-
-     “执行器”项目:xxl-job-client-demo
-     作用:负责接收“调度中心”的调度并执行;
-     A:配置 Jdbc 链接:请在图 2.4A 所示位置配置 jdbc 链接地址,链接地址请保持和 2.1
-章节 所创建的调度数据库的地址一致。
-
-github 地址:https://github.com/xuxueli/xxl-job
-技术交流群(仅作技术交流):367260654
-XXL-JOB 1.3 用户手册
-
-                              (图 2.4A:“执行器”项目 Jdbc 链接配置截图)
-     B:配置“执行器”端口:由于“调度中心”和“执行器”部署在不同机器上,“调度
-中心”会请求该端口触发任务执行。如图 2.4B 所示,默认的“执行器”端口是 9999,如果
-与系统现有端口冲突可自行修改,如若不冲突,可忽略。
-
-                                       (图 2.4B:“执行器”端口截图)
-     部署项目:如果已经正确进行上述配置,可将项目部署到 eclipse 下的 tomcat 服务器中。
-或者,将“执行器”项目导出 war 包单独部署。
-     至此“执行器”项目已经部署结束。
-
-github 地址:https://github.com/xuxueli/xxl-job
-技术交流群(仅作技术交流):367260654
-XXL-JOB 1.3 用户手册
-
-    2.5 开发第一个任务“Hello World”
-
-     本示例为新建一个“GLUE 模式任务”(GLUE 模式任务的执行代码支持托管到调度中心
-在线维护,相比 Bean 模式任务需要在执行器项目开发部署上线,更加简便轻量)。更多有
-关任务的详细配置,请查看“章节三:任务详解”。
-
-     前提:请确认“调度中心”和“执行器”项目已经成功部署并启动;
-     步骤一(新建任务):登陆调度中心,点击图 2.5A 所示新建任务按钮,新建示例任务。
-然后,参考图 2.5B 进行示例任务参数配置,点击保存。
-
-                                   (图 2.5A:“调度中心”新建任务按钮)
-
-                                   (图 2.5B:“调度中心”任务配置截图)
-
-github 地址:https://github.com/xuxueli/xxl-job
-技术交流群(仅作技术交流):367260654
-XXL-JOB 1.3 用户手册
-
-     步骤二(GLUE 开发):请点击图 2.5C 中所示 GLUE 入口按钮,进入 GLUE 开发界面,
-如图 2.5D。GLUE 任务默认已经初始化了示例任务代码,即打印 Hello World。
-
-     (GLUE 实际上是一段继承自 IJobHandler 的 Java 类代码,它在执行器项目中运行,可使
-用@Resource/@Autowire 注入执行器里中的服务)
-
-                        (图 2.5C:“调度中心”管理管理界面,GLUE 入口按钮)
-
-                                  (图 2.5D:“调度中心”GLUE 编辑界面)
-     步骤三(触发执行):点击图 2.5E 所示“执行”按钮,可手动触发一次任务执行。
-
-                  (图 2.5E:“调度中心”管理管理界面,任务手动执行按钮接口)
-     步骤四(查看日志):点击图 2.5F 所示“日志”按钮,可前往任务日志界面查看任务
-日志。在如图 2.5G 的任务日志界面中,可查看任务调度状态,执行器接收到调度请求后的
-执行状态,同时,点击如图 2.5G 中的“执行日志”按钮,可以查看本此调度在执行器端的
-完整执行日志,完整日志如图 2.5H。
-
-github 地址:https://github.com/xuxueli/xxl-job
-技术交流群(仅作技术交流):367260654
-XXL-JOB 1.3 用户手册
-
-                         (图 2.5F:“调度中心”管理管理界面,任务日志入口)
-                        (图 2.5G:“调度中心”管理管理界面,任务日志入口)
-                        (图 2.5H:“调度中心”管理管理界面,任务日志入口)
-
-github 地址:https://github.com/xuxueli/xxl-job
-技术交流群(仅作技术交流):367260654
-XXL-JOB 1.3 用户手册
-
-三 任务详解
-
-    4.1 BEAN 模式任务
-
-     Bean 模式任务:任务逻辑以 JobHandler 的形式存在于“执行器”所在项目中,开发流
-程如下:
-
-     A:开发 JobHandler
-     如图 4.1A 所示,一个 Bean 模式的 JobHandler 需要配置以下三项:
-
-           1、继承 IJobHandler;
-           2、被 Spring 容器扫描为 Bean 示例;
-           3、添加@JobHander(name="demoJobHandler")注解,并定制 handler 名称,
-     该名称是新建任务是 JobHandler 属性的值;
-     (例如 xxl-job-client-demo 项目中的 DemoJobHandler)
-
-            (图 4.1A:Bean 模式任务的示例 Handler)
-
-      B:新建调度任务,并配置,参数如下
-
-任务组         任意选择
-
-任务名         自定义,保证唯一即可
-
-Corn        根据业务情况配置
-
-描述          任意
-
-执行器地址       执行器的地址,格式“IP:Port”,IP 为“执行器”项目所在的机器的 IP
-            地址,因为本机部署所以为“127.0.0.1”,Port 为“执行器”端口,如
-            图 2.4B 所示,“xxl-job-client-demo”项目里的“执行器”配置的默认端
-            口为 9999,因为执行器地址为:127.0.0.1:9999
-
-JobHandler  Bean 模式,任务代码在以 JobHandler 的形式部署在“执行器”所在的项
-
-github 地址:https://github.com/xuxueli/xxl-job
-技术交流群(仅作技术交流):367260654
-XXL-JOB 1.3 用户手册  目里。
-                  此时应该填写对应任务 JobHandler 上注解@JobHander 的 name 属性值,
-执行参数              如图 4.1A 所示,示例任务 name 属性为 demoJobHandler,因此此处填写
-负责人               demoJobHandler
-报警邮件              任务执行的参数,多个入参都好分割,调用任务 handler 时会拆分成数
-报警阀值              组传入
-开启 GLUE 模式        任务负责人
-                  任务失败时邮件通知的邮箱
-                  任务失败次数超过该值才会发送报警邮件
-                  选择关闭状态
-
-                  (图 4.1B:Bean 模式任务的示例配置)
-
-      4.3 GLUE 模式任务
-
-      A:新建调度任务,并配置,参数如下
-
-任务组               同 Bean 模式
-
-任务名               同 Bean 模式
-
-Corn              同 Bean 模式
-
-描述                同 Bean 模式
-
-执行器地址             同 Bean 模式
-
-JobHandler        GLUE 模式,业务代码保存在数据库中,并不需要“执行器”根据
-                  JobHandler 去匹配任务 Handler,因此此时该属性 disable;
-执行参数              同 Bean 模式
-负责人               同 Bean 模式
-报警邮件              同 Bean 模式
-报警阀值              同 Bean 模式
-开启 GLUE 模式        选择开启状态;
-
-github 地址:https://github.com/xuxueli/xxl-job
-技术交流群(仅作技术交流):367260654
-XXL-JOB 1.3 用户手册
-
-                                    (图 4.2A:Glue 模式任务的示例配置)
-
-github 地址:https://github.com/xuxueli/xxl-job
-技术交流群(仅作技术交流):367260654
-XXL-JOB 1.3 用户手册
-
-四 任务管理
-    5.1 编辑任务信息
-
-     在调度管理界面,如图 5.1A 所示,点击“编辑”按钮,弹出更新任务界面,界面如图
-5.1B 所示。修改属性值,保存后实时生效。
-
-                              (图 5.1A:调度管理列表,“编辑”按钮)
-
-                              (图 5.1B:调度管理列表,更新任务界面)
-
-    5.2 编辑 GLUE 代码
-
-     表操作仅针对 GLUE 任务,如图 5.2A 所示在调度管理界面点击“GLUE”按钮,进入 GLUE
-开发界面,界面如图 5.2B 所示;在 GLUE 编辑器中可对 GLUE 代码进行开发;(当然也可以
-在 IDE 中开发完成后,复制粘贴到编辑中)
-
-     版本回溯功能:如图 5.2B,选择下拉框“版本回溯”,会列出该 GLUE 的更新历史,选
-择相应版本即可显示该版本代码,保存后 GLUE 代码即回退到对应的历史版本;
-
-                                        (图 5.2A:GLUE 入口按钮)
-
-github 地址:https://github.com/xuxueli/xxl-job
-技术交流群(仅作技术交流):367260654
-XXL-JOB 1.3 用户手册
-
-                                        (图 5.2B:GLUE 开发界面)
-
-    5.3 恢复/暂停
-
-     可对调度任务进行暂停和回复操作;
-
-                                         (图 5.3:暂停/回复按钮)
-
-    5.4 手动触发一次调度
-
-     点击“执行”按钮,可手动触发一次任务调度,不影响原有调度规则。
-
-                                             (图 5.3:执行按钮)
-
-    5.5 查看日志
-
-     如图 5.5A 所示,点击“日志”按钮,可以查看任务历史调度日志。在历史调入日志界
-面(见图 5.5B)可查看每次任务调度的调度结果、执行结果等,点击执行日志按钮可查看
-执行器完整日志(如图 5.5C);
-
-github 地址:https://github.com/xuxueli/xxl-job
-技术交流群(仅作技术交流):367260654
-XXL-JOB 1.3 用户手册
-
-                                            (图 5.5A:任务日志入口)
-
-                                               (图 5.5B:执行日志)
-
-                                           (图 5.5C:完整的执行日志)
-
-    5.6 删除任务
-
-     点击删除按钮,可以删除对应任务。
-
-    5.7 终止运行中的任务
-
-     进入调度日志界面,如图 5.7 所示可查看目前正在运行的任务,如果任务正在运行中,
-右侧将会显示“终止任务”按钮,点击按钮将会终止任务执行。
-
-github 地址:https://github.com/xuxueli/xxl-job
-技术交流群(仅作技术交流):367260654
-XXL-JOB 1.3 用户手册
-
-                                           (图 5.7:完整的执行日志)
-
-github 地址:https://github.com/xuxueli/xxl-job
-技术交流群(仅作技术交流):367260654
-XXL-JOB 1.3 用户手册
-
-五 总体设计
-    5.1 源码目录介绍
-
-                      (图 5.1:源码目录截图)
-
-目录                    介绍
-/doc                  用户手册
-/doc/db               “调度数据库”建表脚本
-/xxl-job-admin        “调度中心”Wed 项目源码
-/xxl-job-client       “执行器”Jar 依赖
-/xxl-job-client-demo  “执行器”示例 Wed 项目源码。
-
-     其中,Wed 项目“xxl-job-client-demo”是 Demo 执行器项目,大家可以在该项目上进行
-开发,也可以将现有项目改造生成执行器项目;
-
-5.2 “调度数据库”配置
-
-     XXL-JOB 调度模块基于 Quartz 集群实现,其“调度数据库”是在 Quartz 的 11 张集群
-mysql 表基础上扩展而成。
-
-     XXL-JOB 首先定制了 Quartz 原生表结构前缀(XXL_JOB_QRTZ_),如图 3.2A 所示。
-     然后,在此基础上新增了三张扩展表,如下:
-
-            xxl_job_qrtz_trigger_info:
-            xxl_job_qrtz_trigger_log:
-            xxl_job_qrtz_trigger_logglue:
-     因此,XXL-JOB 调度数据库共计用于 14 张数据库表,详细介绍如图 5.2B 所示。
-
-github 地址:https://github.com/xuxueli/xxl-job
-技术交流群(仅作技术交流):367260654
-XXL-JOB 1.3 用户手册
-
-                      (图 5.2A:XXL-JOB 数据库,公共前缀配置,截图)
-表介绍:XXL-JOB 拥有 14 张表,
-
-                  (图 3.2B:调度数据库,表列表截图)
-
-表明                                            介绍
-xxl_job_qrtz_blob_triggers                    Quartz 表
-xxl_job_qrtz_calendars                        Quartz 表
-xxl_job_qrtz_cron_triggers                    Quartz 表
-xxl_job_qrtz_fired_triggers                   Quartz 表
-xxl_job_qrtz_job_details                      Quartz 表
-xxl_job_qrtz_locks                            Quartz 表
-xxl_job_qrtz_paused_trigger_grps              Quartz 表
-xxl_job_qrtz_scheduler_state                  Quartz 表
-
-github 地址:https://github.com/xuxueli/xxl-job
-技术交流群(仅作技术交流):367260654
-XXL-JOB 1.3 用户手册                              Quartz 表
-                                              Quartz 表
-xxl_job_qrtz_simple_triggers                  调度扩展信息表: 用于保存 XXL-JOB 调度任务的
-xxl_job_qrtz_simprop_triggers                 扩展信息,如任务分组、任务名、机器地址、执行
-xxl_job_qrtz_trigger_info                     器、执行入参和报警邮件等等;
-                                              调度日志表: 用于保存 XXL-JOB 任务调度的历史
-xxl_job_qrtz_trigger_log                      信息,如调度结果、执行结果、调度入参、调度机
-                                              器和执行器等等;
-xxl_job_qrtz_trigger_logglue                  任务 GLUE 日志:用于保存 GLUE 更新历史,用于支
-xxl_job_qrtz_triggers                         持 GLUE 的版本回溯功能;
-                                              Quartz 表
-
-    5.2 架构设计
-
-     系统主要由以下三个基础模块组成:
-     调度模块(调度中心 xxl-job-admin):负责管理调度信息,按照调度配置发出调度请
-求,自身不承担业务代码。调度系统与任务解耦,提高了系统可用性和稳定性,同时调度系
-统性能不再受限于任务模块;
-     支持可视化、简单且动态的维管理调度信息,包括任务新建,更新,删除,GLUE 开发
-和任务报警等,所有上述操作都会实时生效,同时支持监控调度结果以及执行日志。
-     任务模块(执行器 xxl-job-client-demo):负责接收调度请求并执行任务逻辑。任务
-模块专注于任务的执行,开发和维护更加简单和高效;
-     负责接收“调度中心”的调度请求(运行/终止/日志)。
-     通讯模块:负责调度模块和任务模块之间的信息通讯;
-
-github 地址:https://github.com/xuxueli/xxl-job
-技术交流群(仅作技术交流):367260654
-XXL-JOB 1.3 用户手册
-
-    6.3 调度模块
-
-           A:RemoteHttpJobBean:常规 Quartz 的开发,任务逻辑一般维护在 QuartzJobBean
-     中,耦合很严重。XXL-JOB 中“调度模块”和“任务模块”完全解耦,调度模块中的所
-     有调度任务使用同一个 QuartzJobBean,即 RemoteHttpJobBean。不同的调度任务将各
-     自参数维护在各自扩展表数据中,当触发 RemoteHttpJobBean 执行时,将会解析不同的
-     任务参数发起远程调用,调用各自的远程执行器服务。
-
-            这种调用模型类似 RPC 调用,RemoteHttpJobBean 提供调用代理的功能,而执行器
-     提供远程服务的功能。
-
-            B:集群分布式:基于 Quartz 的集群方案,数据库选用 Mysql;集群分布式并发环
-     境中使用 QUARTZ 定时任务调度,会在各个节点会上报任务,存到数据库中,执行时会
-     从数据库中取出触发器来执行,如果触发器的名称和执行时间相同,则只有一个节点去
-     执行此任务。
-
-            C:调度线程池:默认线程池中线程的数量为 10 个,避免单线程因阻塞而引起任
-     务调度延迟。
-
-            D:@DisallowConcurrentExecution:XXL-JOB 调度模块的“调度中心”默认不使用
-     该注解,即默认开启并行机制,因为 RemoteHttpJobBean 为公共 QuartzJobBean,这
-     样在多线程调度的情况下,调度模块被阻塞的几率很低,大大提高了调度系统的承载量。
-
-            XXL-JOB 的每个调度任务虽然在调度模块是并行调度执行的,但是任务调度传递到
-     任务模块的“执行器”确实串行执行的,同时支持任务终止。
-
-github 地址:https://github.com/xuxueli/xxl-job
-技术交流群(仅作技术交流):367260654
-XXL-JOB 1.3 用户手册
-
-            E:misfire:错过了触发时间,处理规则
-            可能原因:服务重启;调度线程被 QuartzJobBean 阻塞,线程被耗尽;某个任务启
-     用了@DisallowConcurrentExecution,上次调度持续阻塞,下次调度被错过;
-            Quartz.properties 中关于 misfire 的阀值配置,单位毫秒:
-
-            Misfire 规则:
-                  withMisfireHandlingInstructionDoNothing:不触发立即执行,等待下次调度;
-                  withMisfireHandlingInstructionIgnoreMisfires:以错过的第一个频率时间立刻开
-
-            始执行;
-                  withMisfireHandlingInstructionFireAndProceed:以当前时间为触发频率立刻触
-
-            发一次执行;
-            XXL-JOB 默认 misfire 规则为:withMisfireHandlingInstructionDoNothing
-
-github 地址:https://github.com/xuxueli/xxl-job
-技术交流群(仅作技术交流):367260654
-XXL-JOB 1.3 用户手册
-
-            F:日志回调服务:
-            调度模块的“调度中心”作为 Web 服务单独部署,除此之外,内部嵌入 jetty 服务
-     器提供日志回调服务。
-            “执行器”在接收到任务执行请求后,执行任务,在执行结束之后会将执行结果回
-     调通知“调度中心”,如下图所示。
-
-    6.4 任务模块
-
-     任务开发:请参考章节三;
-     执行器详解:
-     任务日志:
-
-    6.5 通讯模块
-
-github 地址:https://github.com/xuxueli/xxl-job
-技术交流群(仅作技术交流):367260654
-XXL-JOB 1.3 用户手册
-
-七 其他
-    7.1 接入登记
-
-     更多接入公司,欢迎在 https://github.com/xuxueli/xxl-job/issues/1 登记。
-
-    7.2 报告问题
-
-     XXL-JOB 托管在 Github 上,如有问题可在 ISSUES 上提问,也可以加入技术交流群(仅作
-技术交流):367260654 。
-
-github 地址:https://github.com/xuxueli/xxl-job
-技术交流群(仅作技术交流):367260654
-

+ 2 - 1
xxl-job-admin/.gitignore

@@ -2,4 +2,5 @@
 /.settings/
 /.classpath
 /.project
-/xxl-job-admin.iml
+/xxl-job-admin.iml
+/target/

+ 2 - 2
xxl-job-admin/pom.xml

@@ -144,10 +144,10 @@
 			<version>2.2.3</version>
 		</dependency>
 		
-		<!-- xxl-job-client -->
+		<!-- xxl-job-core -->
 		<dependency>
 			<groupId>com.xxl</groupId>
-			<artifactId>xxl-job-client</artifactId>
+			<artifactId>xxl-job-core</artifactId>
 			<version>1.3.1</version>
 		</dependency>
 

+ 5 - 5
xxl-job-admin/src/main/java/com/xxl/job/controller/IndexController.java → xxl-job-admin/src/main/java/com/xxl/job/admin/controller/IndexController.java

@@ -1,4 +1,4 @@
-package com.xxl.job.controller;
+package com.xxl.job.admin.controller;
 
 import javax.servlet.http.HttpServletRequest;
 import javax.servlet.http.HttpServletResponse;
@@ -10,10 +10,10 @@ import org.springframework.web.bind.annotation.RequestMapping;
 import org.springframework.web.bind.annotation.RequestMethod;
 import org.springframework.web.bind.annotation.ResponseBody;
 
-import com.xxl.job.controller.annotation.PermessionLimit;
-import com.xxl.job.controller.interceptor.PermissionInterceptor;
-import com.xxl.job.core.model.ReturnT;
-import com.xxl.job.core.util.PropertiesUtil;
+import com.xxl.job.admin.controller.annotation.PermessionLimit;
+import com.xxl.job.admin.controller.interceptor.PermissionInterceptor;
+import com.xxl.job.admin.core.model.ReturnT;
+import com.xxl.job.admin.core.util.PropertiesUtil;
 
 /**
  * index controller

+ 6 - 6
xxl-job-admin/src/main/java/com/xxl/job/controller/JobCodeController.java → xxl-job-admin/src/main/java/com/xxl/job/admin/controller/JobCodeController.java

@@ -1,4 +1,4 @@
-package com.xxl.job.controller;
+package com.xxl.job.admin.controller;
 
 import java.util.List;
 
@@ -10,11 +10,11 @@ import org.springframework.ui.Model;
 import org.springframework.web.bind.annotation.RequestMapping;
 import org.springframework.web.bind.annotation.ResponseBody;
 
-import com.xxl.job.core.model.ReturnT;
-import com.xxl.job.core.model.XxlJobInfo;
-import com.xxl.job.core.model.XxlJobLogGlue;
-import com.xxl.job.dao.IXxlJobInfoDao;
-import com.xxl.job.dao.IXxlJobLogGlueDao;
+import com.xxl.job.admin.core.model.ReturnT;
+import com.xxl.job.admin.core.model.XxlJobInfo;
+import com.xxl.job.admin.core.model.XxlJobLogGlue;
+import com.xxl.job.admin.dao.IXxlJobInfoDao;
+import com.xxl.job.admin.dao.IXxlJobLogGlueDao;
 
 /**
  * job code controller

+ 11 - 11
xxl-job-admin/src/main/java/com/xxl/job/controller/JobInfoController.java → xxl-job-admin/src/main/java/com/xxl/job/admin/controller/JobInfoController.java

@@ -1,4 +1,4 @@
-package com.xxl.job.controller;
+package com.xxl.job.admin.controller;
 
 import java.util.HashMap;
 import java.util.List;
@@ -15,16 +15,16 @@ import org.springframework.web.bind.annotation.RequestMapping;
 import org.springframework.web.bind.annotation.RequestParam;
 import org.springframework.web.bind.annotation.ResponseBody;
 
-import com.xxl.job.client.handler.HandlerRepository;
-import com.xxl.job.client.util.JacksonUtil;
-import com.xxl.job.core.constant.Constants.JobGroupEnum;
-import com.xxl.job.core.model.ReturnT;
-import com.xxl.job.core.model.XxlJobInfo;
-import com.xxl.job.core.util.DynamicSchedulerUtil;
-import com.xxl.job.dao.IXxlJobInfoDao;
-import com.xxl.job.dao.IXxlJobLogDao;
-import com.xxl.job.dao.IXxlJobLogGlueDao;
-import com.xxl.job.service.job.RemoteHttpJobBean;
+import com.xxl.job.admin.core.constant.Constants.JobGroupEnum;
+import com.xxl.job.admin.core.jobbean.RemoteHttpJobBean;
+import com.xxl.job.admin.core.model.ReturnT;
+import com.xxl.job.admin.core.model.XxlJobInfo;
+import com.xxl.job.admin.core.util.DynamicSchedulerUtil;
+import com.xxl.job.admin.dao.IXxlJobInfoDao;
+import com.xxl.job.admin.dao.IXxlJobLogDao;
+import com.xxl.job.admin.dao.IXxlJobLogGlueDao;
+import com.xxl.job.core.handler.HandlerRepository;
+import com.xxl.job.core.util.JacksonUtil;
 
 /**
  * index controller

+ 9 - 9
xxl-job-admin/src/main/java/com/xxl/job/controller/JobLogController.java → xxl-job-admin/src/main/java/com/xxl/job/admin/controller/JobLogController.java

@@ -1,4 +1,4 @@
-package com.xxl.job.controller;
+package com.xxl.job.admin.controller;
 
 import java.text.ParseException;
 import java.util.Date;
@@ -16,14 +16,14 @@ import org.springframework.web.bind.annotation.RequestMapping;
 import org.springframework.web.bind.annotation.RequestParam;
 import org.springframework.web.bind.annotation.ResponseBody;
 
-import com.xxl.job.client.handler.HandlerRepository;
-import com.xxl.job.client.util.HttpUtil;
-import com.xxl.job.client.util.HttpUtil.RemoteCallBack;
-import com.xxl.job.client.util.JacksonUtil;
-import com.xxl.job.core.constant.Constants.JobGroupEnum;
-import com.xxl.job.core.model.ReturnT;
-import com.xxl.job.core.model.XxlJobLog;
-import com.xxl.job.dao.IXxlJobLogDao;
+import com.xxl.job.admin.core.constant.Constants.JobGroupEnum;
+import com.xxl.job.admin.core.model.ReturnT;
+import com.xxl.job.admin.core.model.XxlJobLog;
+import com.xxl.job.admin.dao.IXxlJobLogDao;
+import com.xxl.job.core.handler.HandlerRepository;
+import com.xxl.job.core.util.HttpUtil;
+import com.xxl.job.core.util.HttpUtil.RemoteCallBack;
+import com.xxl.job.core.util.JacksonUtil;
 
 /**
  * index controller

+ 1 - 1
xxl-job-admin/src/main/java/com/xxl/job/controller/annotation/PermessionLimit.java → xxl-job-admin/src/main/java/com/xxl/job/admin/controller/annotation/PermessionLimit.java

@@ -1,4 +1,4 @@
-package com.xxl.job.controller.annotation;
+package com.xxl.job.admin.controller.annotation;
 
 
 import java.lang.annotation.ElementType;

+ 1 - 1
xxl-job-admin/src/main/java/com/xxl/job/controller/interceptor/CookieInterceptor.java → xxl-job-admin/src/main/java/com/xxl/job/admin/controller/interceptor/CookieInterceptor.java

@@ -1,4 +1,4 @@
-package com.xxl.job.controller.interceptor;
+package com.xxl.job.admin.controller.interceptor;
 
 import java.util.HashMap;
 

+ 3 - 3
xxl-job-admin/src/main/java/com/xxl/job/controller/interceptor/PermissionInterceptor.java → xxl-job-admin/src/main/java/com/xxl/job/admin/controller/interceptor/PermissionInterceptor.java

@@ -1,4 +1,4 @@
-package com.xxl.job.controller.interceptor;
+package com.xxl.job.admin.controller.interceptor;
 
 import javax.servlet.http.HttpServletRequest;
 import javax.servlet.http.HttpServletResponse;
@@ -6,8 +6,8 @@ import javax.servlet.http.HttpServletResponse;
 import org.springframework.web.method.HandlerMethod;
 import org.springframework.web.servlet.handler.HandlerInterceptorAdapter;
 
-import com.xxl.job.controller.annotation.PermessionLimit;
-import com.xxl.job.core.util.CookieUtil;
+import com.xxl.job.admin.controller.annotation.PermessionLimit;
+import com.xxl.job.admin.core.util.CookieUtil;
 
 /**
  * 权限拦截, 简易版

+ 3 - 3
xxl-job-admin/src/main/java/com/xxl/job/controller/resolver/WebExceptionResolver.java → xxl-job-admin/src/main/java/com/xxl/job/admin/controller/resolver/WebExceptionResolver.java

@@ -1,4 +1,4 @@
-package com.xxl.job.controller.resolver;
+package com.xxl.job.admin.controller.resolver;
 
 import javax.servlet.http.HttpServletRequest;
 import javax.servlet.http.HttpServletResponse;
@@ -10,8 +10,8 @@ import org.springframework.web.method.HandlerMethod;
 import org.springframework.web.servlet.HandlerExceptionResolver;
 import org.springframework.web.servlet.ModelAndView;
 
-import com.xxl.job.client.util.JacksonUtil;
-import com.xxl.job.core.model.ReturnT;
+import com.xxl.job.admin.core.model.ReturnT;
+import com.xxl.job.core.util.JacksonUtil;
 
 /**
  * common exception resolver

+ 5 - 5
xxl-job-admin/src/main/java/com/xxl/job/core/callback/XxlJobCallbackServer.java → xxl-job-admin/src/main/java/com/xxl/job/admin/core/callback/XxlJobLogCallbackServer.java

@@ -1,4 +1,4 @@
-package com.xxl.job.core.callback;
+package com.xxl.job.admin.core.callback;
 
 import org.eclipse.jetty.server.Connector;
 import org.eclipse.jetty.server.Handler;
@@ -9,13 +9,13 @@ import org.eclipse.jetty.util.thread.ExecutorThreadPool;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
-import com.xxl.job.client.util.IpUtil;
+import com.xxl.job.core.util.IpUtil;
 
 /**
  * Created by xuxueli on 2016-5-22 11:15:42
  */
-public class XxlJobCallbackServer {
-    private static final Logger logger = LoggerFactory.getLogger(XxlJobCallbackServer.class);
+public class XxlJobLogCallbackServer {
+    private static final Logger logger = LoggerFactory.getLogger(XxlJobLogCallbackServer.class);
 
     private static String trigger_log_address;
     public static String getTrigger_log_address() {
@@ -43,7 +43,7 @@ public class XxlJobCallbackServer {
 
                 // handler
                 HandlerCollection handlerc =new HandlerCollection();
-                handlerc.setHandlers(new Handler[]{new XxlJobCallbackServerHandler()});
+                handlerc.setHandlers(new Handler[]{new XxlJobLogCallbackServerHandler()});
                 server.setHandler(handlerc);
 
                 try {

+ 6 - 6
xxl-job-admin/src/main/java/com/xxl/job/core/callback/XxlJobCallbackServerHandler.java → xxl-job-admin/src/main/java/com/xxl/job/admin/core/callback/XxlJobLogCallbackServerHandler.java

@@ -1,4 +1,4 @@
-package com.xxl.job.core.callback;
+package com.xxl.job.admin.core.callback;
 
 import java.io.IOException;
 import java.util.Date;
@@ -11,15 +11,15 @@ import org.apache.commons.lang.StringUtils;
 import org.eclipse.jetty.server.Request;
 import org.eclipse.jetty.server.handler.AbstractHandler;
 
-import com.xxl.job.client.util.HttpUtil.RemoteCallBack;
-import com.xxl.job.client.util.JacksonUtil;
-import com.xxl.job.core.model.XxlJobLog;
-import com.xxl.job.core.util.DynamicSchedulerUtil;
+import com.xxl.job.admin.core.model.XxlJobLog;
+import com.xxl.job.admin.core.util.DynamicSchedulerUtil;
+import com.xxl.job.core.util.HttpUtil.RemoteCallBack;
+import com.xxl.job.core.util.JacksonUtil;
 
 /**
  * Created by xuxueli on 2016-5-22 11:15:42
  */
-public class XxlJobCallbackServerHandler extends AbstractHandler {
+public class XxlJobLogCallbackServerHandler extends AbstractHandler {
 
 	@Override
 	public void handle(String s, Request baseRequest, HttpServletRequest httpServletRequest, HttpServletResponse httpServletResponse) throws IOException, ServletException {

+ 1 - 1
xxl-job-admin/src/main/java/com/xxl/job/core/constant/Constants.java → xxl-job-admin/src/main/java/com/xxl/job/admin/core/constant/Constants.java

@@ -1,4 +1,4 @@
-package com.xxl.job.core.constant;
+package com.xxl.job.admin.core.constant;
 
 /**
  * job group

+ 1 - 0
xxl-job-admin/src/main/java/com/xxl/job/service/job/LocalNomalJobBean.java → xxl-job-admin/src/main/java/com/xxl/job/admin/core/jobbean/LocalNomalJobBean.java

@@ -1,3 +1,4 @@
+package com.xxl.job.admin.core.jobbean;
 //package com.xxl.job.service.job;
 //
 //import java.io.PrintWriter;

+ 11 - 11
xxl-job-admin/src/main/java/com/xxl/job/service/job/RemoteHttpJobBean.java → xxl-job-admin/src/main/java/com/xxl/job/admin/core/jobbean/RemoteHttpJobBean.java

@@ -1,4 +1,4 @@
-package com.xxl.job.service.job;
+package com.xxl.job.admin.core.jobbean;
 
 import java.util.Date;
 import java.util.HashMap;
@@ -11,15 +11,15 @@ import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 import org.springframework.scheduling.quartz.QuartzJobBean;
 
-import com.xxl.job.client.handler.HandlerRepository;
-import com.xxl.job.client.util.HttpUtil;
-import com.xxl.job.client.util.HttpUtil.RemoteCallBack;
-import com.xxl.job.client.util.JacksonUtil;
-import com.xxl.job.core.callback.XxlJobCallbackServer;
-import com.xxl.job.core.model.XxlJobInfo;
-import com.xxl.job.core.model.XxlJobLog;
-import com.xxl.job.core.thread.JobMonitorHelper;
-import com.xxl.job.core.util.DynamicSchedulerUtil;
+import com.xxl.job.admin.core.callback.XxlJobLogCallbackServer;
+import com.xxl.job.admin.core.model.XxlJobInfo;
+import com.xxl.job.admin.core.model.XxlJobLog;
+import com.xxl.job.admin.core.thread.JobMonitorHelper;
+import com.xxl.job.admin.core.util.DynamicSchedulerUtil;
+import com.xxl.job.core.handler.HandlerRepository;
+import com.xxl.job.core.util.HttpUtil;
+import com.xxl.job.core.util.HttpUtil.RemoteCallBack;
+import com.xxl.job.core.util.JacksonUtil;
 
 /**
  * http job bean
@@ -58,7 +58,7 @@ public class RemoteHttpJobBean extends QuartzJobBean {
 		params.put(HandlerRepository.NAMESPACE, HandlerRepository.NameSpaceEnum.RUN.name());
 		
 		params.put(HandlerRepository.TRIGGER_LOG_ID, String.valueOf(jobLog.getId()));
-		params.put(HandlerRepository.TRIGGER_LOG_ADDRESS, XxlJobCallbackServer.getTrigger_log_address());
+		params.put(HandlerRepository.TRIGGER_LOG_ADDRESS, XxlJobLogCallbackServer.getTrigger_log_address());
 		
 		params.put(HandlerRepository.HANDLER_NAME, jobDataMap.get(HandlerRepository.HANDLER_NAME));
 		params.put(HandlerRepository.HANDLER_PARAMS, jobDataMap.get(HandlerRepository.HANDLER_PARAMS));

+ 1 - 0
xxl-job-admin/src/main/java/com/xxl/job/service/job/impl/DemoConcurrentJobBean.java → xxl-job-admin/src/main/java/com/xxl/job/admin/core/jobbean/impl/DemoConcurrentJobBean.java

@@ -1,3 +1,4 @@
+package com.xxl.job.admin.core.jobbean.impl;
 //package com.xxl.job.service.job.impl;
 //
 //import java.util.concurrent.TimeUnit;

+ 1 - 0
xxl-job-admin/src/main/java/com/xxl/job/service/job/impl/DemoNomalJobBean.java → xxl-job-admin/src/main/java/com/xxl/job/admin/core/jobbean/impl/DemoNomalJobBean.java

@@ -1,3 +1,4 @@
+package com.xxl.job.admin.core.jobbean.impl;
 //package com.xxl.job.service.job.impl;
 //
 //import java.util.concurrent.TimeUnit;

+ 1 - 1
xxl-job-admin/src/main/java/com/xxl/job/core/model/ReturnT.java → xxl-job-admin/src/main/java/com/xxl/job/admin/core/model/ReturnT.java

@@ -1,4 +1,4 @@
-package com.xxl.job.core.model;
+package com.xxl.job.admin.core.model;
 
 /**
  * common return

+ 1 - 1
xxl-job-admin/src/main/java/com/xxl/job/core/model/XxlJobInfo.java → xxl-job-admin/src/main/java/com/xxl/job/admin/core/model/XxlJobInfo.java

@@ -1,4 +1,4 @@
-package com.xxl.job.core.model;
+package com.xxl.job.admin.core.model;
 
 import java.util.Date;
 

+ 1 - 1
xxl-job-admin/src/main/java/com/xxl/job/core/model/XxlJobLog.java → xxl-job-admin/src/main/java/com/xxl/job/admin/core/model/XxlJobLog.java

@@ -1,4 +1,4 @@
-package com.xxl.job.core.model;
+package com.xxl.job.admin.core.model;
 
 import java.util.Date;
 

+ 1 - 1
xxl-job-admin/src/main/java/com/xxl/job/core/model/XxlJobLogGlue.java → xxl-job-admin/src/main/java/com/xxl/job/admin/core/model/XxlJobLogGlue.java

@@ -1,4 +1,4 @@
-package com.xxl.job.core.model;
+package com.xxl.job.admin.core.model;
 
 /**
  * xxl-job log for glue, used to track job code process

+ 7 - 7
xxl-job-admin/src/main/java/com/xxl/job/core/thread/JobMonitorHelper.java → xxl-job-admin/src/main/java/com/xxl/job/admin/core/thread/JobMonitorHelper.java

@@ -1,4 +1,4 @@
-package com.xxl.job.core.thread;
+package com.xxl.job.admin.core.thread;
 
 import java.text.MessageFormat;
 import java.util.concurrent.ConcurrentHashMap;
@@ -11,11 +11,11 @@ import org.apache.commons.lang.StringUtils;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
-import com.xxl.job.client.util.HttpUtil.RemoteCallBack;
-import com.xxl.job.core.model.XxlJobInfo;
-import com.xxl.job.core.model.XxlJobLog;
-import com.xxl.job.core.util.DynamicSchedulerUtil;
-import com.xxl.job.core.util.MailUtil;
+import com.xxl.job.admin.core.model.XxlJobInfo;
+import com.xxl.job.admin.core.model.XxlJobLog;
+import com.xxl.job.admin.core.util.DynamicSchedulerUtil;
+import com.xxl.job.admin.core.util.MailUtil;
+import com.xxl.job.core.util.HttpUtil.RemoteCallBack;
 
 /**
  * job monitor helper
@@ -62,7 +62,7 @@ public class JobMonitorHelper {
 								XxlJobInfo info = DynamicSchedulerUtil.xxlJobInfoDao.load(log.getJobGroup(), log.getJobName());
 								if (count >= info.getAlarmThreshold()) {
 									MailUtil.sendMail(info.getAlarmEmail(), "《调度平台中心-监控报警》", 
-											MessageFormat.format("调度任务[{0}]失败报警,连续失败次数:", monotorKey, count), false, null);
+											MessageFormat.format("调度任务[{0}]失败报警,连续失败次数:{1}", monotorKey, count), false, null);
 									countMap.remove(monotorKey);
 								}
 							}

+ 1 - 1
xxl-job-admin/src/main/java/com/xxl/job/core/util/CookieUtil.java → xxl-job-admin/src/main/java/com/xxl/job/admin/core/util/CookieUtil.java

@@ -1,4 +1,4 @@
-package com.xxl.job.core.util;
+package com.xxl.job.admin.core.util;
 
 import javax.servlet.http.Cookie;
 import javax.servlet.http.HttpServletRequest;

+ 7 - 7
xxl-job-admin/src/main/java/com/xxl/job/core/util/DynamicSchedulerUtil.java → xxl-job-admin/src/main/java/com/xxl/job/admin/core/util/DynamicSchedulerUtil.java

@@ -1,4 +1,4 @@
-package com.xxl.job.core.util;
+package com.xxl.job.admin.core.util;
 
 import java.util.ArrayList;
 import java.util.Date;
@@ -31,11 +31,11 @@ import org.springframework.context.ApplicationContext;
 import org.springframework.context.ApplicationContextAware;
 import org.springframework.util.Assert;
 
-import com.xxl.job.client.util.JacksonUtil;
-import com.xxl.job.core.callback.XxlJobCallbackServer;
-import com.xxl.job.core.model.XxlJobInfo;
-import com.xxl.job.dao.IXxlJobInfoDao;
-import com.xxl.job.dao.IXxlJobLogDao;
+import com.xxl.job.admin.core.callback.XxlJobLogCallbackServer;
+import com.xxl.job.admin.core.model.XxlJobInfo;
+import com.xxl.job.admin.dao.IXxlJobInfoDao;
+import com.xxl.job.admin.dao.IXxlJobLogDao;
+import com.xxl.job.core.util.JacksonUtil;
 
 /**
  * base quartz scheduler util
@@ -60,7 +60,7 @@ public final class DynamicSchedulerUtil implements ApplicationContextAware, Init
     public void init(){
     	try {
     		// start callback server
-			new XxlJobCallbackServer().start(callBackPort);
+			new XxlJobLogCallbackServer().start(callBackPort);
 		} catch (Exception e) {
 			e.printStackTrace();
 		}

+ 1 - 1
xxl-job-admin/src/main/java/com/xxl/job/core/util/MailUtil.java → xxl-job-admin/src/main/java/com/xxl/job/admin/core/util/MailUtil.java

@@ -1,4 +1,4 @@
-package com.xxl.job.core.util;
+package com.xxl.job.admin.core.util;
 
 import java.io.File;
 import java.util.Properties;

+ 1 - 1
xxl-job-admin/src/main/java/com/xxl/job/core/util/PropertiesUtil.java → xxl-job-admin/src/main/java/com/xxl/job/admin/core/util/PropertiesUtil.java

@@ -1,4 +1,4 @@
-package com.xxl.job.core.util;
+package com.xxl.job.admin.core.util;
 
 import java.io.FileInputStream;
 import java.io.IOException;

+ 3 - 2
xxl-job-admin/src/main/java/com/xxl/job/dao/IXxlJobInfoDao.java → xxl-job-admin/src/main/java/com/xxl/job/admin/dao/IXxlJobInfoDao.java

@@ -1,8 +1,9 @@
-package com.xxl.job.dao;
+package com.xxl.job.admin.dao;
 
 import java.util.List;
 
-import com.xxl.job.core.model.XxlJobInfo;
+import com.xxl.job.admin.core.model.XxlJobInfo;
+
 
 /**
  * job info

+ 2 - 2
xxl-job-admin/src/main/java/com/xxl/job/dao/IXxlJobLogDao.java → xxl-job-admin/src/main/java/com/xxl/job/admin/dao/IXxlJobLogDao.java

@@ -1,9 +1,9 @@
-package com.xxl.job.dao;
+package com.xxl.job.admin.dao;
 
 import java.util.Date;
 import java.util.List;
 
-import com.xxl.job.core.model.XxlJobLog;
+import com.xxl.job.admin.core.model.XxlJobLog;
 
 /**
  * job log

+ 2 - 2
xxl-job-admin/src/main/java/com/xxl/job/dao/IXxlJobLogGlueDao.java → xxl-job-admin/src/main/java/com/xxl/job/admin/dao/IXxlJobLogGlueDao.java

@@ -1,8 +1,8 @@
-package com.xxl.job.dao;
+package com.xxl.job.admin.dao;
 
 import java.util.List;
 
-import com.xxl.job.core.model.XxlJobLogGlue;
+import com.xxl.job.admin.core.model.XxlJobLogGlue;
 
 /**
  * job log for glue

+ 3 - 3
xxl-job-admin/src/main/java/com/xxl/job/dao/impl/XxlJobInfoDaoImpl.java → xxl-job-admin/src/main/java/com/xxl/job/admin/dao/impl/XxlJobInfoDaoImpl.java

@@ -1,4 +1,4 @@
-package com.xxl.job.dao.impl;
+package com.xxl.job.admin.dao.impl;
 
 import java.util.HashMap;
 import java.util.List;
@@ -8,8 +8,8 @@ import javax.annotation.Resource;
 import org.mybatis.spring.SqlSessionTemplate;
 import org.springframework.stereotype.Repository;
 
-import com.xxl.job.core.model.XxlJobInfo;
-import com.xxl.job.dao.IXxlJobInfoDao;
+import com.xxl.job.admin.core.model.XxlJobInfo;
+import com.xxl.job.admin.dao.IXxlJobInfoDao;
 
 /**
  * job info

+ 3 - 3
xxl-job-admin/src/main/java/com/xxl/job/dao/impl/XxlJobLogDaoImpl.java → xxl-job-admin/src/main/java/com/xxl/job/admin/dao/impl/XxlJobLogDaoImpl.java

@@ -1,4 +1,4 @@
-package com.xxl.job.dao.impl;
+package com.xxl.job.admin.dao.impl;
 
 import java.util.Date;
 import java.util.HashMap;
@@ -9,8 +9,8 @@ import javax.annotation.Resource;
 import org.mybatis.spring.SqlSessionTemplate;
 import org.springframework.stereotype.Repository;
 
-import com.xxl.job.core.model.XxlJobLog;
-import com.xxl.job.dao.IXxlJobLogDao;
+import com.xxl.job.admin.core.model.XxlJobLog;
+import com.xxl.job.admin.dao.IXxlJobLogDao;
 
 /**
  * job log

+ 3 - 3
xxl-job-admin/src/main/java/com/xxl/job/dao/impl/XxlJobLogGlueDaoImpl.java → xxl-job-admin/src/main/java/com/xxl/job/admin/dao/impl/XxlJobLogGlueDaoImpl.java

@@ -1,4 +1,4 @@
-package com.xxl.job.dao.impl;
+package com.xxl.job.admin.dao.impl;
 
 import java.util.HashMap;
 import java.util.List;
@@ -8,8 +8,8 @@ import javax.annotation.Resource;
 import org.mybatis.spring.SqlSessionTemplate;
 import org.springframework.stereotype.Repository;
 
-import com.xxl.job.core.model.XxlJobLogGlue;
-import com.xxl.job.dao.IXxlJobLogGlueDao;
+import com.xxl.job.admin.core.model.XxlJobLogGlue;
+import com.xxl.job.admin.dao.IXxlJobLogGlueDao;
 
 /**
  * job log for glue

+ 1 - 11
xxl-job-admin/src/main/resources/applicationcontext-base.xml

@@ -9,8 +9,7 @@
            http://www.springframework.org/schema/util 
            http://www.springframework.org/schema/util/spring-util.xsd">
 
-	<context:annotation-config />
-	<context:component-scan base-package="com.xxl.job.service, com.xxl.job.dao" />
+	<context:component-scan base-package="com.xxl.job.admin.dao" />
 
 	<bean id="freemarkerConfig" class="org.springframework.web.servlet.view.freemarker.FreeMarkerConfigurer">
 		<property name="templateLoaderPath" value="/WEB-INF/template/" />
@@ -21,13 +20,4 @@
 		</property>
 	</bean>
 
-	<bean id="propertyConfigurer" class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
-		<property name="fileEncoding" value="utf-8" />
-		<property name="locations">
-			<list>
-				<value>classpath*:jdbc.properties</value>
-			</list>
-		</property>
-	</bean>
-
 </beans>

+ 35 - 3
xxl-job-admin/src/main/resources/applicationcontext-database.xml

@@ -11,10 +11,18 @@
 		http://www.springframework.org/schema/aop/spring-aop-3.0.xsd 
 		http://www.springframework.org/schema/tx 
 		http://www.springframework.org/schema/tx/spring-tx-3.0.xsd">
-		
-	<context:annotation-config />
-	<context:component-scan base-package="com.xxl.service.impl, com.xxl.dao.impl" />
+	
+	
+	<bean id="propertyConfigurer" class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
+		<property name="fileEncoding" value="utf-8" />
+		<property name="locations">
+			<list>
+				<value>classpath*:jdbc.properties</value>
+			</list>
+		</property>
+	</bean>
 
+	<!-- part 1 :for datasource -->
 	<bean id="dataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource"  destroy-method="close">  
 	    <property name="driverClass" value="${c3p0.driverClass}" />  
 	    <property name="jdbcUrl" value="${c3p0.url}" />  
@@ -38,5 +46,29 @@
     <bean id="sqlSessionTemplate"  class="org.mybatis.spring.SqlSessionTemplate" scope="prototype">  
           <constructor-arg index="0" ref="sqlSessionFactory" />  
     </bean> 
+    
+    <!-- part 2 :for tx -->
+    <bean id="transactionManager" class="org.springframework.jdbc.datasource.DataSourceTransactionManager">
+		<property name="dataSource" ref="dataSource" />
+	</bean>
+      
+	<tx:annotation-driven transaction-manager="transactionManager" proxy-target-class="true"/>
+	
+	<tx:advice id="txAdvice" transaction-manager="transactionManager">
+		<tx:attributes>
+			<tx:method name="detail*" propagation="SUPPORTS" />
+			<tx:method name="visit*" propagation="SUPPORTS" />
+			<tx:method name="get*" propagation="SUPPORTS" />
+			<tx:method name="find*" propagation="SUPPORTS" />
+			<tx:method name="check*" propagation="SUPPORTS" />
+			<tx:method name="list*" propagation="SUPPORTS" />
+			<tx:method name="*" propagation="REQUIRED" rollback-for="exception" />
+		</tx:attributes>
+	</tx:advice>
+
+	<aop:config>
+		<aop:pointcut id="txoperation" expression="execution(* com.xxl.job.admin.service.imp.*.*(..))" />
+		<aop:advisor pointcut-ref="txoperation" advice-ref="txAdvice" />
+	</aop:config>
 	
 </beans>

+ 1 - 1
xxl-job-admin/src/main/resources/applicationcontext-trigger-db.xml

@@ -18,7 +18,7 @@
 	</bean>
 	
 	<!-- 协同-调度器 -->
-	<bean id="dynamicSchedulerUtil" class="com.xxl.job.core.util.DynamicSchedulerUtil" init-method="init">
+	<bean id="dynamicSchedulerUtil" class="com.xxl.job.admin.core.util.DynamicSchedulerUtil" init-method="init">
 		<!-- (轻易不要变更“调度器名称”, 任务创建时会绑定该“调度器名称”) -->
         <property name="scheduler" ref="quartzScheduler"/>
         <property name="callBackPort" value="8888"/>

+ 0 - 38
xxl-job-admin/src/main/resources/applicationcontext-tx.xml

@@ -1,38 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<beans xmlns="http://www.springframework.org/schema/beans"
-	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:context="http://www.springframework.org/schema/context"
-	xmlns:aop="http://www.springframework.org/schema/aop" xmlns:tx="http://www.springframework.org/schema/tx"
-	xsi:schemaLocation="
-		http://www.springframework.org/schema/beans 
-		http://www.springframework.org/schema/beans/spring-beans-3.0.xsd 
-		http://www.springframework.org/schema/context 
-		http://www.springframework.org/schema/context/spring-context-3.0.xsd 
-		http://www.springframework.org/schema/aop 
-		http://www.springframework.org/schema/aop/spring-aop-3.0.xsd 
-		http://www.springframework.org/schema/tx 
-		http://www.springframework.org/schema/tx/spring-tx-3.0.xsd">
-
-	<bean id="transactionManager" class="org.springframework.jdbc.datasource.DataSourceTransactionManager">
-		<property name="dataSource" ref="dataSource" />
-	</bean>
-      
-	<tx:annotation-driven transaction-manager="transactionManager" proxy-target-class="true"/>
-	
-	<tx:advice id="txAdvice" transaction-manager="transactionManager">
-		<tx:attributes>
-			<tx:method name="detail*" propagation="SUPPORTS" />
-			<tx:method name="visit*" propagation="SUPPORTS" />
-			<tx:method name="get*" propagation="SUPPORTS" />
-			<tx:method name="find*" propagation="SUPPORTS" />
-			<tx:method name="check*" propagation="SUPPORTS" />
-			<tx:method name="list*" propagation="SUPPORTS" />
-			<tx:method name="*" propagation="REQUIRED" rollback-for="exception" />
-		</tx:attributes>
-	</tx:advice>
-
-	<aop:config>
-		<aop:pointcut id="txoperation" expression="execution(* com.xxl.service.imp.*.*(..))" />
-		<aop:advisor pointcut-ref="txoperation" advice-ref="txAdvice" />
-	</aop:config>
-	
-</beans>

+ 3 - 3
xxl-job-admin/src/main/resources/mybatis-mapper/XxlJobInfoMapper.xml

@@ -3,7 +3,7 @@
 	"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
 <mapper namespace="XxlJobInfoMapper">
 	
-	<resultMap id="XxlJobInfo" type="com.xxl.job.core.model.XxlJobInfo" >
+	<resultMap id="XxlJobInfo" type="com.xxl.job.admin.core.model.XxlJobInfo" >
 		<result column="id" property="id" />
 	
 		<result column="job_group" property="jobGroup" />
@@ -71,7 +71,7 @@
 		</trim>
 	</select>
 	
-	<insert id="save" parameterType="com.xxl.job.core.model.XxlJobInfo" useGeneratedKeys="true" keyProperty="id" >
+	<insert id="save" parameterType="com.xxl.job.admin.core.model.XxlJobInfo" useGeneratedKeys="true" keyProperty="id" >
 		INSERT INTO `xxl_job_qrtz_trigger_info` (
 			job_group,
 			job_name,
@@ -115,7 +115,7 @@
 			AND t.job_name = #{jobName}
 	</select>
 	
-	<update id="update" parameterType="com.xxl.job.core.model.XxlJobInfo" >
+	<update id="update" parameterType="com.xxl.job.admin.core.model.XxlJobInfo" >
 		UPDATE `xxl_job_qrtz_trigger_info` 
 		SET 
 			job_cron = #{jobCron},

+ 2 - 2
xxl-job-admin/src/main/resources/mybatis-mapper/XxlJobLogGlueMapper.xml

@@ -3,7 +3,7 @@
 	"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
 <mapper namespace="XxlJobLogGlueMapper">
 	
-	<resultMap id="XxlJobLogGlue" type="com.xxl.job.core.model.XxlJobLogGlue" >
+	<resultMap id="XxlJobLogGlue" type="com.xxl.job.admin.core.model.XxlJobLogGlue" >
 		<result column="id" property="id" />
 	    <result column="job_group" property="jobGroup" />
 	    <result column="job_name" property="jobName" />
@@ -23,7 +23,7 @@
 		t.update_time
 	</sql>
 	
-	<insert id="save" parameterType="com.xxl.job.core.model.XxlJobLogGlue" useGeneratedKeys="true" keyProperty="id" >
+	<insert id="save" parameterType="com.xxl.job.admin.core.model.XxlJobLogGlue" useGeneratedKeys="true" keyProperty="id" >
 		INSERT INTO `xxl_job_qrtz_trigger_logglue` (
 			`job_group`,
 			`job_name`,

+ 2 - 2
xxl-job-admin/src/main/resources/mybatis-mapper/XxlJobLogMapper.xml

@@ -3,7 +3,7 @@
 	"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
 <mapper namespace="XxlJobLogMapper">
 	
-	<resultMap id="XxlJobLog" type="com.xxl.job.core.model.XxlJobLog" >
+	<resultMap id="XxlJobLog" type="com.xxl.job.admin.core.model.XxlJobLog" >
 		<result column="id" property="id" />
 	
 	    <result column="job_group" property="jobGroup" />
@@ -91,7 +91,7 @@
 			AND t.job_name = #{jobName}
 	</select>
 	
-	<insert id="save" parameterType="com.xxl.job.core.model.XxlJobLog" useGeneratedKeys="true" keyProperty="id" >
+	<insert id="save" parameterType="com.xxl.job.admin.core.model.XxlJobLog" useGeneratedKeys="true" keyProperty="id" >
 		INSERT INTO `xxl_job_qrtz_trigger_log` (
 			`job_group`,
 			`job_name`,

+ 4 - 4
xxl-job-admin/src/main/resources/springmvc-context.xml

@@ -19,7 +19,7 @@
 		http://www.springframework.org/schema/mvc/spring-mvc-3.0.xsd">
 
 	<mvc:annotation-driven /> 
-	<context:component-scan base-package="com.xxl.job.controller" />
+	<context:component-scan base-package="com.xxl.job.admin.controller" />
 	
 	<mvc:resources mapping="/favicon.ico" location="/favicon.ico" />
 	<mvc:resources mapping="/static/**" location="/static/" />
@@ -41,13 +41,13 @@
  	<mvc:interceptors>
 		<mvc:interceptor>
 			<mvc:mapping path="/**"/>
-			<bean class="com.xxl.job.controller.interceptor.PermissionInterceptor"/>
+			<bean class="com.xxl.job.admin.controller.interceptor.PermissionInterceptor"/>
 		</mvc:interceptor>
 		<mvc:interceptor>
 			<mvc:mapping path="/**"/>
-			<bean class="com.xxl.job.controller.interceptor.CookieInterceptor"/>
+			<bean class="com.xxl.job.admin.controller.interceptor.CookieInterceptor"/>
 		</mvc:interceptor>
 	</mvc:interceptors>
-	<bean id="exceptionResolver" class="com.xxl.job.controller.resolver.WebExceptionResolver" />
+	<bean id="exceptionResolver" class="com.xxl.job.admin.controller.resolver.WebExceptionResolver" />
 	
 </beans>

+ 2 - 2
xxl-job-admin/src/test/java/com/xxl/job/dao/impl/XxlJobInfoTest.java

@@ -9,8 +9,8 @@ import org.junit.runner.RunWith;
 import org.springframework.test.context.ContextConfiguration;
 import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
 
-import com.xxl.job.core.model.XxlJobInfo;
-import com.xxl.job.dao.IXxlJobInfoDao;
+import com.xxl.job.admin.core.model.XxlJobInfo;
+import com.xxl.job.admin.dao.IXxlJobInfoDao;
 
 @RunWith(SpringJUnit4ClassRunner.class)
 @ContextConfiguration(locations = "classpath*:applicationcontext-*.xml")

+ 4 - 4
xxl-job-admin/src/test/java/com/xxl/job/dao/impl/XxlJobLogTest.java

@@ -10,10 +10,10 @@ import org.junit.runner.RunWith;
 import org.springframework.test.context.ContextConfiguration;
 import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
 
-import com.xxl.job.client.handler.IJobHandler;
-import com.xxl.job.client.util.HttpUtil.RemoteCallBack;
-import com.xxl.job.core.model.XxlJobLog;
-import com.xxl.job.dao.IXxlJobLogDao;
+import com.xxl.job.admin.core.model.XxlJobLog;
+import com.xxl.job.admin.dao.IXxlJobLogDao;
+import com.xxl.job.core.handler.IJobHandler;
+import com.xxl.job.core.util.HttpUtil.RemoteCallBack;
 
 @RunWith(SpringJUnit4ClassRunner.class)
 @ContextConfiguration(locations = "classpath*:applicationcontext-*.xml")

+ 0 - 25
xxl-job-client-demo/src/main/java/com/xxl/job/service/handler/DemoJobHandler.java

@@ -1,25 +0,0 @@
-package com.xxl.job.service.handler;
-
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-import org.springframework.stereotype.Service;
-
-import com.xxl.job.client.handler.IJobHandler;
-import com.xxl.job.client.handler.annotation.JobHander;
-
-/**
- * demo job handler
- * @author xuxueli 2015-12-19 19:43:36
- */
-@JobHander(name="demoJobHandler")
-@Service
-public class DemoJobHandler extends IJobHandler {
-	private static transient Logger logger = LoggerFactory.getLogger(DemoJobHandler.class);
-	
-	@Override
-	public JobHandleStatus handle(String... params) throws Exception {
-		logger.info("XXL-JOB, Hello World.");
-		return JobHandleStatus.SUCCESS;
-	}
-	
-}

+ 1 - 0
xxl-job-client/.gitignore → xxl-job-core/.gitignore

@@ -3,3 +3,4 @@
 /.project
 /.settings/
 /xxl-job-client.iml
+/target/

+ 1 - 1
xxl-job-client/pom.xml → xxl-job-core/pom.xml

@@ -6,7 +6,7 @@
 		<artifactId>xxl-job</artifactId>
 		<version>1.3.0-SNAPSHOT</version>
 	</parent>
-	<artifactId>xxl-job-client</artifactId>
+	<artifactId>xxl-job-core</artifactId>
 	<version>1.3.1</version>
 
 	<dependencies>

+ 9 - 9
xxl-job-client/src/main/java/com/xxl/job/client/netcom/jetty/XxlJobJettyServer.java → xxl-job-core/src/main/java/com/xxl/job/core/executor/jetty/XxlJobExecutor.java

@@ -1,4 +1,4 @@
-package com.xxl.job.client.netcom.jetty;
+package com.xxl.job.core.executor.jetty;
 
 import java.util.Map;
 
@@ -14,15 +14,15 @@ import org.springframework.beans.BeansException;
 import org.springframework.context.ApplicationContext;
 import org.springframework.context.ApplicationContextAware;
 
-import com.xxl.job.client.handler.HandlerRepository;
-import com.xxl.job.client.handler.IJobHandler;
-import com.xxl.job.client.handler.annotation.JobHander;
+import com.xxl.job.core.handler.HandlerRepository;
+import com.xxl.job.core.handler.IJobHandler;
+import com.xxl.job.core.handler.annotation.JobHander;
 
 /**
  * Created by xuxueli on 2016/3/2 21:14.
  */
-public class XxlJobJettyServer implements ApplicationContextAware {
-    private static final Logger logger = LoggerFactory.getLogger(XxlJobJettyServer.class);
+public class XxlJobExecutor implements ApplicationContextAware {
+    private static final Logger logger = LoggerFactory.getLogger(XxlJobExecutor.class);
 
     private int port = 9999;
     public void setPort(int port) {
@@ -45,7 +45,7 @@ public class XxlJobJettyServer implements ApplicationContextAware {
 
                 // handler
                 HandlerCollection handlerc =new HandlerCollection();
-                handlerc.setHandlers(new Handler[]{new XxlJobJettyServerHandler()});
+                handlerc.setHandlers(new Handler[]{new XxlJobExecutorHandler()});
                 server.setHandler(handlerc);
 
                 try {
@@ -64,7 +64,7 @@ public class XxlJobJettyServer implements ApplicationContextAware {
     public static ApplicationContext applicationContext;
 	@Override
 	public void setApplicationContext(ApplicationContext applicationContext) throws BeansException {
-		XxlJobJettyServer.applicationContext = applicationContext;
+		XxlJobExecutor.applicationContext = applicationContext;
 		initJobHandler();
 	}
 	
@@ -72,7 +72,7 @@ public class XxlJobJettyServer implements ApplicationContextAware {
 	 * init job handler service
 	 */
 	public void initJobHandler(){
-		Map<String, Object> serviceBeanMap = XxlJobJettyServer.applicationContext.getBeansWithAnnotation(JobHander.class);
+		Map<String, Object> serviceBeanMap = XxlJobExecutor.applicationContext.getBeansWithAnnotation(JobHander.class);
         if (serviceBeanMap!=null && serviceBeanMap.size()>0) {
             for (Object serviceBean : serviceBeanMap.values()) {
                 String jobName = serviceBean.getClass().getAnnotation(JobHander.class).name();

+ 3 - 3
xxl-job-client/src/main/java/com/xxl/job/client/netcom/jetty/XxlJobJettyServerHandler.java → xxl-job-core/src/main/java/com/xxl/job/core/executor/jetty/XxlJobExecutorHandler.java

@@ -1,6 +1,6 @@
-package com.xxl.job.client.netcom.jetty;
+package com.xxl.job.core.executor.jetty;
 
-import com.xxl.job.client.handler.HandlerRepository;
+import com.xxl.job.core.handler.HandlerRepository;
 import org.eclipse.jetty.server.Request;
 import org.eclipse.jetty.server.handler.AbstractHandler;
 
@@ -14,7 +14,7 @@ import java.util.Map;
 /**
  * Created by xuxueli on 2016/3/2 21:23.
  */
-public class XxlJobJettyServerHandler extends AbstractHandler {
+public class XxlJobExecutorHandler extends AbstractHandler {
 
 	@Override
 	public void handle(String s, Request baseRequest, HttpServletRequest httpServletRequest, HttpServletResponse httpServletResponse) throws IOException, ServletException {

+ 0 - 0
xxl-job-client/src/main/java/com/xxl/job/client/netcom/servlet/XxlJobServlet.java → xxl-job-core/src/main/java/com/xxl/job/core/executor/servlet/XxlJobServlet.java


+ 6 - 6
xxl-job-client/src/main/java/com/xxl/job/client/glue/GlueFactory.java → xxl-job-core/src/main/java/com/xxl/job/core/glue/GlueFactory.java

@@ -1,4 +1,4 @@
-package com.xxl.job.client.glue;
+package com.xxl.job.core.glue;
 
 import java.lang.reflect.Field;
 import java.lang.reflect.Modifier;
@@ -13,10 +13,10 @@ import org.springframework.context.ApplicationContext;
 import org.springframework.context.ApplicationContextAware;
 import org.springframework.core.annotation.AnnotationUtils;
 
-import com.xxl.job.client.glue.cache.LocalCache;
-import com.xxl.job.client.glue.loader.GlueLoader;
-import com.xxl.job.client.handler.IJobHandler;
-import com.xxl.job.client.handler.IJobHandler.JobHandleStatus;
+import com.xxl.job.core.glue.cache.LocalCache;
+import com.xxl.job.core.glue.loader.GlueLoader;
+import com.xxl.job.core.handler.IJobHandler;
+import com.xxl.job.core.handler.IJobHandler.JobHandleStatus;
 
 import groovy.lang.GroovyClassLoader;
 
@@ -158,7 +158,7 @@ public class GlueFactory implements ApplicationContextAware {
 	
 	// ----------------------------- util -----------------------------
 	public static JobHandleStatus glue(String job_group, String job_name, String... params) throws Exception{
-		return GlueFactory.glueFactory.loadInstance(job_group, job_name).handle(params);
+		return GlueFactory.glueFactory.loadInstance(job_group, job_name).execute(params);
 	}
 	
 }

+ 1 - 1
xxl-job-client/src/main/java/com/xxl/job/client/glue/cache/ICache.java → xxl-job-core/src/main/java/com/xxl/job/core/glue/cache/ICache.java

@@ -1,4 +1,4 @@
-package com.xxl.job.client.glue.cache;
+package com.xxl.job.core.glue.cache;
 
 /**
  * chche interface

+ 1 - 1
xxl-job-client/src/main/java/com/xxl/job/client/glue/cache/LocalCache.java → xxl-job-core/src/main/java/com/xxl/job/core/glue/cache/LocalCache.java

@@ -1,4 +1,4 @@
-package com.xxl.job.client.glue.cache;
+package com.xxl.job.core.glue.cache;
 
 import java.util.concurrent.ConcurrentHashMap;
 

+ 1 - 1
xxl-job-client/src/main/java/com/xxl/job/client/glue/loader/GlueLoader.java → xxl-job-core/src/main/java/com/xxl/job/core/glue/loader/GlueLoader.java

@@ -1,4 +1,4 @@
-package com.xxl.job.client.glue.loader;
+package com.xxl.job.core.glue.loader;
 
 /**
  * code source loader

+ 5 - 5
xxl-job-client/src/main/java/com/xxl/job/client/handler/HandlerRepository.java → xxl-job-core/src/main/java/com/xxl/job/core/handler/HandlerRepository.java

@@ -1,4 +1,4 @@
-package com.xxl.job.client.handler;
+package com.xxl.job.core.handler;
 
 import java.util.Date;
 import java.util.Map;
@@ -7,10 +7,10 @@ import java.util.concurrent.ConcurrentHashMap;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
-import com.xxl.job.client.handler.impl.GlueJobHandler;
-import com.xxl.job.client.log.XxlJobFileAppender;
-import com.xxl.job.client.util.HttpUtil.RemoteCallBack;
-import com.xxl.job.client.util.JacksonUtil;
+import com.xxl.job.core.handler.impl.GlueJobHandler;
+import com.xxl.job.core.log.XxlJobFileAppender;
+import com.xxl.job.core.util.HttpUtil.RemoteCallBack;
+import com.xxl.job.core.util.JacksonUtil;
 
 /**
  * handler repository

+ 6 - 6
xxl-job-client/src/main/java/com/xxl/job/client/handler/HandlerThread.java → xxl-job-core/src/main/java/com/xxl/job/core/handler/HandlerThread.java

@@ -1,4 +1,4 @@
-package com.xxl.job.client.handler;
+package com.xxl.job.core.handler;
 
 import java.io.PrintWriter;
 import java.io.StringWriter;
@@ -11,10 +11,10 @@ import org.eclipse.jetty.util.ConcurrentHashSet;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
-import com.xxl.job.client.handler.IJobHandler.JobHandleStatus;
-import com.xxl.job.client.log.XxlJobFileAppender;
-import com.xxl.job.client.util.HttpUtil;
-import com.xxl.job.client.util.HttpUtil.RemoteCallBack;
+import com.xxl.job.core.handler.IJobHandler.JobHandleStatus;
+import com.xxl.job.core.log.XxlJobFileAppender;
+import com.xxl.job.core.util.HttpUtil;
+import com.xxl.job.core.util.HttpUtil.RemoteCallBack;
 
 /**
  * handler thread
@@ -79,7 +79,7 @@ public class HandlerThread extends Thread{
 					try {
 						XxlJobFileAppender.contextHolder.set(trigger_log_id);
 						logger.info(">>>>>>>>>>> xxl-job handle start.");
-						_status = handler.handle(handlerParams);
+						_status = handler.execute(handlerParams);
 					} catch (Exception e) {
 						logger.info("HandlerThread Exception:", e);
 						StringWriter out = new StringWriter();

+ 2 - 2
xxl-job-client/src/main/java/com/xxl/job/client/handler/IJobHandler.java → xxl-job-core/src/main/java/com/xxl/job/core/handler/IJobHandler.java

@@ -1,4 +1,4 @@
-package com.xxl.job.client.handler;
+package com.xxl.job.core.handler;
 
 /**
  * remote job handler
@@ -13,7 +13,7 @@ public abstract class IJobHandler extends HandlerRepository{
 	 * @return 
 	 * @throws Exception
 	 */
-	public abstract JobHandleStatus handle(String... params) throws Exception;
+	public abstract JobHandleStatus execute(String... params) throws Exception;
 	
 	public static enum JobHandleStatus{
 		/**

+ 1 - 1
xxl-job-client/src/main/java/com/xxl/job/client/handler/annotation/JobHander.java → xxl-job-core/src/main/java/com/xxl/job/core/handler/annotation/JobHander.java

@@ -1,4 +1,4 @@
-package com.xxl.job.client.handler.annotation;
+package com.xxl.job.core.handler.annotation;
 
 import java.lang.annotation.ElementType;
 import java.lang.annotation.Retention;

+ 4 - 4
xxl-job-client/src/main/java/com/xxl/job/client/handler/impl/GlueJobHandler.java → xxl-job-core/src/main/java/com/xxl/job/core/handler/impl/GlueJobHandler.java

@@ -1,7 +1,7 @@
-package com.xxl.job.client.handler.impl;
+package com.xxl.job.core.handler.impl;
 
-import com.xxl.job.client.glue.GlueFactory;
-import com.xxl.job.client.handler.IJobHandler;
+import com.xxl.job.core.glue.GlueFactory;
+import com.xxl.job.core.handler.IJobHandler;
 
 /**
  * glue job handler
@@ -17,7 +17,7 @@ public class GlueJobHandler extends IJobHandler {
 	}
 
 	@Override
-	public JobHandleStatus handle(String... params) throws Exception {
+	public JobHandleStatus execute(String... params) throws Exception {
 		return GlueFactory.glue(job_group, job_name, params);
 	}
 

+ 1 - 1
xxl-job-client/src/main/java/com/xxl/job/client/log/XxlJobFileAppender.java → xxl-job-core/src/main/java/com/xxl/job/core/log/XxlJobFileAppender.java

@@ -1,4 +1,4 @@
-package com.xxl.job.client.log;
+package com.xxl.job.core.log;
 
 import java.io.BufferedReader;
 import java.io.File;

+ 1 - 1
xxl-job-client/src/main/java/com/xxl/job/client/util/HttpUtil.java → xxl-job-core/src/main/java/com/xxl/job/core/util/HttpUtil.java

@@ -1,4 +1,4 @@
-package com.xxl.job.client.util;
+package com.xxl.job.core.util;
 
 import java.io.IOException;
 import java.io.PrintWriter;

+ 1 - 1
xxl-job-client/src/main/java/com/xxl/job/client/util/IpUtil.java → xxl-job-core/src/main/java/com/xxl/job/core/util/IpUtil.java

@@ -1,4 +1,4 @@
-package com.xxl.job.client.util;
+package com.xxl.job.core.util;
 
 import java.net.InetAddress;
 import java.net.NetworkInterface;

+ 1 - 1
xxl-job-client/src/main/java/com/xxl/job/client/util/JacksonUtil.java → xxl-job-core/src/main/java/com/xxl/job/core/util/JacksonUtil.java

@@ -1,4 +1,4 @@
-package com.xxl.job.client.util;
+package com.xxl.job.core.util;
 
 
 import java.io.IOException;

+ 1 - 0
xxl-job-client-demo/.gitignore → xxl-job-executor-example/.gitignore

@@ -3,3 +3,4 @@
 /.project
 /.settings/
 /xxl-job-client-demo.iml
+/target/

+ 3 - 3
xxl-job-client-demo/pom.xml → xxl-job-executor-example/pom.xml

@@ -6,7 +6,7 @@
 		<artifactId>xxl-job</artifactId>
 		<version>1.3.0-SNAPSHOT</version>
 	</parent>
-	<artifactId>xxl-job-client-demo</artifactId>
+	<artifactId>xxl-job-executor-example</artifactId>
 	<version>1.3.1-SNAPSHOT</version>
 	<packaging>war</packaging>
 
@@ -75,10 +75,10 @@
 			<version>5.1.29</version>
 		</dependency>
 		
-		<!-- xxl-job-client -->
+		<!-- xxl-job-core -->
 		<dependency>
 			<groupId>com.xxl</groupId>
-			<artifactId>xxl-job-client</artifactId>
+			<artifactId>xxl-job-core</artifactId>
 			<version>1.3.1</version>
 		</dependency>
 		

+ 8 - 4
xxl-job-client-demo/src/main/java/com/xxl/job/service/loader/DbGlueLoader.java → xxl-job-executor-example/src/main/java/com/xxl/job/executor/loader/DbGlueLoader.java

@@ -1,13 +1,17 @@
-package com.xxl.job.service.loader;
+package com.xxl.job.executor.loader;
 
 import javax.annotation.Resource;
 
 import org.springframework.stereotype.Service;
 
-import com.xxl.job.client.glue.loader.GlueLoader;
-import com.xxl.job.dao.IXxlJobInfoDao;
-import com.xxl.job.dao.model.XxlJobInfo;
+import com.xxl.job.core.glue.loader.GlueLoader;
+import com.xxl.job.executor.loader.dao.IXxlJobInfoDao;
+import com.xxl.job.executor.loader.dao.model.XxlJobInfo;
 
+/**
+ * GLUE 代码加载器,推荐将该服务配置成RPC服务
+ * @author xuxueli
+ */
 @Service("dbGlueLoader")
 public class DbGlueLoader implements GlueLoader {
 

+ 2 - 2
xxl-job-client-demo/src/main/java/com/xxl/job/dao/IXxlJobInfoDao.java → xxl-job-executor-example/src/main/java/com/xxl/job/executor/loader/dao/IXxlJobInfoDao.java

@@ -1,6 +1,6 @@
-package com.xxl.job.dao;
+package com.xxl.job.executor.loader.dao;
 
-import com.xxl.job.dao.model.XxlJobInfo;
+import com.xxl.job.executor.loader.dao.model.XxlJobInfo;
 
 /**
  * job log for glue

+ 4 - 3
xxl-job-client-demo/src/main/java/com/xxl/job/dao/impl/XxlJobInfoDaoImpl.java → xxl-job-executor-example/src/main/java/com/xxl/job/executor/loader/dao/impl/XxlJobInfoDaoImpl.java

@@ -1,4 +1,4 @@
-package com.xxl.job.dao.impl;
+package com.xxl.job.executor.loader.dao.impl;
 
 import java.util.HashMap;
 
@@ -7,8 +7,9 @@ import javax.annotation.Resource;
 import org.mybatis.spring.SqlSessionTemplate;
 import org.springframework.stereotype.Repository;
 
-import com.xxl.job.dao.IXxlJobInfoDao;
-import com.xxl.job.dao.model.XxlJobInfo;
+import com.xxl.job.executor.loader.dao.IXxlJobInfoDao;
+import com.xxl.job.executor.loader.dao.model.XxlJobInfo;
+
 
 /**
  * job log for glue

+ 1 - 1
xxl-job-client-demo/src/main/java/com/xxl/job/dao/model/XxlJobInfo.java → xxl-job-executor-example/src/main/java/com/xxl/job/executor/loader/dao/model/XxlJobInfo.java

@@ -1,4 +1,4 @@
-package com.xxl.job.dao.model;
+package com.xxl.job.executor.loader.dao.model;
 
 /**
  * xxl-job info

+ 32 - 0
xxl-job-executor-example/src/main/java/com/xxl/job/executor/service/jobhandler/DemoJobHandler.java

@@ -0,0 +1,32 @@
+package com.xxl.job.executor.service.jobhandler;
+
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+import org.springframework.stereotype.Service;
+
+import com.xxl.job.core.handler.IJobHandler;
+import com.xxl.job.core.handler.annotation.JobHander;
+
+
+/**
+ * 任务Handler的一个Demo(Bean模式)
+ * 
+ * 开发步骤:
+ * 1、继承 “IJobHandler” ;
+ * 2、转配到Spring,例如加 “@Service” 注解;
+ * 3、加 “@JobHander” 注解,自定义属性name的值;name值在配置新任务是使用;
+ * 
+ * @author xuxueli 2015-12-19 19:43:36
+ */
+@JobHander(name="demoJobHandler")
+@Service
+public class DemoJobHandler extends IJobHandler {
+	private static transient Logger logger = LoggerFactory.getLogger(DemoJobHandler.class);
+	
+	@Override
+	public JobHandleStatus execute(String... params) throws Exception {
+		logger.info("XXL-JOB, Hello World.");
+		return JobHandleStatus.SUCCESS;
+	}
+	
+}

+ 0 - 2
xxl-job-client-demo/src/main/resources/applicationcontext-database.xml → xxl-job-executor-example/src/main/resources/applicationcontext-database.xml

@@ -12,8 +12,6 @@
 		http://www.springframework.org/schema/tx 
 		http://www.springframework.org/schema/tx/spring-tx-3.0.xsd">
 		
-	<context:component-scan base-package="com.xxl.job.service, com.xxl.job.dao" />
-	
 	<bean id="propertyConfigurer" class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
 		<property name="fileEncoding" value="utf-8" />
 		<property name="locations">

+ 4 - 4
xxl-job-client-demo/src/main/resources/applicationcontext-xxl-job.xml → xxl-job-executor-example/src/main/resources/applicationcontext-xxl-job.xml

@@ -9,16 +9,16 @@
            http://www.springframework.org/schema/util 
            http://www.springframework.org/schema/util/spring-util.xsd">
 
-	<context:component-scan base-package="com.xxl.job.service" />
+	<context:component-scan base-package="com.xxl.job.executor" />
 
 	<!-- 执行器 -->
-	<bean id="xxlJobJettyServer" class="com.xxl.job.client.netcom.jetty.XxlJobJettyServer" init-method="start">
+	<bean id="xxlJobJettyServer" class="com.xxl.job.core.executor.jetty.XxlJobExecutor" init-method="start">
 		<property name="port" value="9999" />
 	</bean>
 	
-	<bean id="glueFactory" class="com.xxl.job.client.glue.GlueFactory">
+	<bean id="glueFactory" class="com.xxl.job.core.glue.GlueFactory">
 		<property name="cacheTimeout" value="5000" />
-		<property name="glueLoader" ref="dbGlueLoader" />
+		<property name="glueLoader" ref="dbGlueLoader" />	<!-- GLUE 代码加载器,推荐将该服务配置成RPC服务 -->
 	</bean>
 
 </beans>

+ 0 - 0
xxl-job-client-demo/src/main/resources/jdbc.properties → xxl-job-executor-example/src/main/resources/jdbc.properties


+ 1 - 1
xxl-job-client-demo/src/main/resources/log4j.xml → xxl-job-executor-example/src/main/resources/log4j.xml

@@ -18,7 +18,7 @@
         </layout>
     </appender>
     
-    <appender name="xxl-job" class="com.xxl.job.client.log.XxlJobFileAppender">
+    <appender name="xxl-job" class="com.xxl.job.core.log.XxlJobFileAppender">
         <param name="filePath" value="/logs/xxl-job/"/>
         <param name="append" value="true"/>
         <param name="encoding" value="UTF-8"/>

+ 1 - 1
xxl-job-client-demo/src/main/resources/mybatis-mapper/XxlJobInfoMapper.xml → xxl-job-executor-example/src/main/resources/mybatis-mapper/XxlJobInfoMapper.xml

@@ -3,7 +3,7 @@
 	"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
 <mapper namespace="XxlJobInfoMapper">
 	
-	<resultMap id="XxlJobInfo" type="com.xxl.job.dao.model.XxlJobInfo" >
+	<resultMap id="XxlJobInfo" type="com.xxl.job.executor.loader.dao.model.XxlJobInfo" >
 		<result column="job_group" property="jobGroup" />
 	    <result column="job_name" property="jobName" />
 	    <result column="glue_source" property="glueSource" />

+ 0 - 0
xxl-job-client-demo/src/main/webapp/WEB-INF/web.xml → xxl-job-executor-example/src/main/webapp/WEB-INF/web.xml


+ 0 - 0
xxl-job-client-demo/src/main/webapp/index.html → xxl-job-executor-example/src/main/webapp/index.html