diff --git a/oh-my-scheduler-server/pom.xml b/oh-my-scheduler-server/pom.xml
index 9c369663..68d2b914 100644
--- a/oh-my-scheduler-server/pom.xml
+++ b/oh-my-scheduler-server/pom.xml
@@ -13,5 +13,60 @@
1.0.0-SNAPSHOT
jar
+
+ 2.9.2
+ 2.2.6.RELEASE
+
+
+
+
+
+
+ org.springframework.boot
+ spring-boot-starter-web
+ ${springboot.version}
+
+
+
+ org.springframework.boot
+ spring-boot-starter-test
+ test
+
+
+
+
+ io.springfox
+ springfox-swagger2
+ ${swagger.version}
+
+
+
+ io.springfox
+ springfox-swagger-ui
+ ${swagger.version}
+
+
+
+
+
+
+
+
+ org.springframework.boot
+ spring-boot-maven-plugin
+ ${springboot.version}
+
+ com.github.kfcfans.oms.server.OhMyApplication
+
+
+
+
+ repackage
+
+
+
+
+
+
\ No newline at end of file
diff --git a/oh-my-scheduler-server/src/main/java/com/github/kfcfans/oms/server/OhMyApplication.java b/oh-my-scheduler-server/src/main/java/com/github/kfcfans/oms/server/OhMyApplication.java
new file mode 100644
index 00000000..efe6bab9
--- /dev/null
+++ b/oh-my-scheduler-server/src/main/java/com/github/kfcfans/oms/server/OhMyApplication.java
@@ -0,0 +1,19 @@
+package com.github.kfcfans.oms.server;
+
+import org.springframework.boot.SpringApplication;
+import org.springframework.boot.autoconfigure.SpringBootApplication;
+
+/**
+ * SpringBoot 启动入口
+ *
+ * @author tjq
+ * @since 2020/3/29
+ */
+@SpringBootApplication
+public class OhMyApplication {
+
+ public static void main(String[] args) {
+ SpringApplication.run(OhMyApplication.class, args);
+ }
+
+}
diff --git a/oh-my-scheduler-server/src/main/java/com/github/kfcfans/oms/server/config/SwaggerConfig.java b/oh-my-scheduler-server/src/main/java/com/github/kfcfans/oms/server/config/SwaggerConfig.java
new file mode 100644
index 00000000..63dc4cd4
--- /dev/null
+++ b/oh-my-scheduler-server/src/main/java/com/github/kfcfans/oms/server/config/SwaggerConfig.java
@@ -0,0 +1,43 @@
+package com.github.kfcfans.oms.server.config;
+
+import org.springframework.context.annotation.Bean;
+import org.springframework.context.annotation.Configuration;
+import springfox.documentation.builders.ApiInfoBuilder;
+import springfox.documentation.service.ApiInfo;
+import springfox.documentation.spi.DocumentationType;
+import springfox.documentation.spring.web.plugins.Docket;
+import springfox.documentation.swagger2.annotations.EnableSwagger2;
+
+import static springfox.documentation.builders.PathSelectors.any;
+
+/**
+ * Swagger UI 配置
+ *
+ * @author tjq
+ * @since 2020/3/29
+ */
+@Configuration
+@EnableSwagger2
+public class SwaggerConfig {
+
+ @Bean
+ public Docket createRestApi() {
+ // apiInfo()用来创建该Api的基本信息(这些基本信息会展现在文档页面中
+ ApiInfo apiInfo = new ApiInfoBuilder()
+ .title("OhMyScheduler")
+ .description("Distributed scheduling and computing framework.")
+ .license("GPL")
+ .termsOfServiceUrl("https://github.com/KFCFans/OhMyScheduler")
+ .version("DEVELOP-VERSION")
+ .build();
+
+ return new Docket(DocumentationType.SWAGGER_2)
+ .apiInfo(apiInfo)
+ // select()函数返回一个ApiSelectorBuilder实例
+ .select()
+ // 决定了暴露哪些接口给 Swagger
+ .paths(any())
+ .build();
+ }
+
+}
diff --git a/oh-my-scheduler-server/src/main/java/com/github/kfcfans/oms/server/model/BaseDO.java b/oh-my-scheduler-server/src/main/java/com/github/kfcfans/oms/server/model/BaseDO.java
new file mode 100644
index 00000000..3d2e3dc4
--- /dev/null
+++ b/oh-my-scheduler-server/src/main/java/com/github/kfcfans/oms/server/model/BaseDO.java
@@ -0,0 +1,22 @@
+package com.github.kfcfans.oms.server.model;
+
+import java.util.Date;
+
+/**
+ * 数据库实体类基类
+ *
+ * @author tjq
+ * @since 2020/3/29
+ */
+public abstract class BaseDO {
+
+ /**
+ * 主键
+ */
+ private Long id;
+
+ private Date gmtCreate;
+ private Date gmtModified;
+
+ private String attribute;
+}
diff --git a/oh-my-scheduler-server/src/main/java/com/github/kfcfans/oms/server/model/GroupInfoDO.java b/oh-my-scheduler-server/src/main/java/com/github/kfcfans/oms/server/model/GroupInfoDO.java
new file mode 100644
index 00000000..66d06a40
--- /dev/null
+++ b/oh-my-scheduler-server/src/main/java/com/github/kfcfans/oms/server/model/GroupInfoDO.java
@@ -0,0 +1,20 @@
+package com.github.kfcfans.oms.server.model;
+
+/**
+ * 分组信息表
+ *
+ * @author tjq
+ * @since 2020/3/29
+ */
+public class GroupInfoDO extends BaseDO {
+
+ /**
+ * 分组名称
+ */
+ private String groupName;
+ /**
+ * 分组描述
+ */
+ private String groupDescription;
+
+}
diff --git a/oh-my-scheduler-server/src/main/java/com/github/kfcfans/oms/server/model/JobInfoDO.java b/oh-my-scheduler-server/src/main/java/com/github/kfcfans/oms/server/model/JobInfoDO.java
new file mode 100644
index 00000000..6cfe9302
--- /dev/null
+++ b/oh-my-scheduler-server/src/main/java/com/github/kfcfans/oms/server/model/JobInfoDO.java
@@ -0,0 +1,43 @@
+package com.github.kfcfans.oms.server.model;
+
+/**
+ * 任务信息表
+ *
+ * @author tjq
+ * @since 2020/3/29
+ */
+public class JobInfoDO extends BaseDO {
+
+
+ /* ************************** 任务基本信息 ************************** */
+ // 任务名称
+ private String jobName;
+ // 任务描述
+ private String jobDescription;
+ // 任务分组名称
+ private String groupName;
+
+ /* ************************** 定时参数 ************************** */
+ // 时间表达式类型(CRON/API/FIX_RATE/FIX_DELAY)
+ private int timeExpressionType;
+ // 时间表达式,CRON/NULL/LONG/LONG
+ private String timeExpression;
+
+
+ /* ************************** 执行方式 ************************** */
+ // 执行类型,单机/广播/MR
+ private int executeType;
+ // 执行器类型,Java/Shell
+ private int processorType;
+ // 执行器信息
+ private String processorInfo;
+
+ /* ************************** 运行时配置 ************************** */
+ // 并发度,同时执行的线程数量
+ private int concurrency;
+ // 任务整体超时时间
+ private long instanceTimeLimit;
+ // 任务的每一个Task超时时间
+ private long taskTimeLimit;
+
+}
diff --git a/oh-my-scheduler-server/src/main/java/com/github/kfcfans/oms/server/model/JobLogDO.java b/oh-my-scheduler-server/src/main/java/com/github/kfcfans/oms/server/model/JobLogDO.java
new file mode 100644
index 00000000..39307c31
--- /dev/null
+++ b/oh-my-scheduler-server/src/main/java/com/github/kfcfans/oms/server/model/JobLogDO.java
@@ -0,0 +1,22 @@
+package com.github.kfcfans.oms.server.model;
+
+/**
+ * 任务运行日志表
+ *
+ * @author tjq
+ * @since 2020/3/30
+ */
+public class JobLogDO extends BaseDO {
+
+ // 任务ID
+ private Long jobId;
+ // 任务实例ID
+ private String instanceId;
+ // 任务状态 运行中/成功/失败...
+ private int status;
+ // 执行结果
+ private String result;
+ // 耗时
+ private Long usedTime;
+
+}
diff --git a/oh-my-scheduler-server/src/main/java/com/github/kfcfans/oms/server/model/RegisterInfoDO.java b/oh-my-scheduler-server/src/main/java/com/github/kfcfans/oms/server/model/RegisterInfoDO.java
new file mode 100644
index 00000000..3c223621
--- /dev/null
+++ b/oh-my-scheduler-server/src/main/java/com/github/kfcfans/oms/server/model/RegisterInfoDO.java
@@ -0,0 +1,14 @@
+package com.github.kfcfans.oms.server.model;
+
+/**
+ * 注册信息表,用于服务发现
+ *
+ * @author tjq
+ * @since 2020/3/30
+ */
+public class RegisterInfoDO extends BaseDO {
+
+ private String appName;
+ private String currentServerAddress;
+ private String lastServerAddress;
+}
diff --git a/oh-my-scheduler-server/src/main/resources/application.properties b/oh-my-scheduler-server/src/main/resources/application.properties
new file mode 100644
index 00000000..01dc25b5
--- /dev/null
+++ b/oh-my-scheduler-server/src/main/resources/application.properties
@@ -0,0 +1,2 @@
+# server port config
+server.port=7700
\ No newline at end of file