18 Star 22 Fork 12

柏松 / EMS4j

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
克隆/下载
readme.md 3.22 KB
一键复制 编辑 原始数据 按行查看 历史
柏松 提交于 2017-03-07 09:54 . 更新 readme.md

简介

EMS4j主要有两部分业务模块:

  1. 员工、部门、权限、菜单,字典管理模块,即项目全称 Employee Manager Service For Java 之意;
  2. 邮件,短信,微信,钉钉无阻塞发送模块,即项目简称 EMS4j 之意;

核心服务接口直接通过dubbo向外暴露,使用者直接调用即可。亦可通过HTTP RESTful调用

项目特色:

  • 零配置即可运行
  • service和web模块相对独立,低耦合;
  • 支持多系统;
  • 与微信企业号,钉钉有通信接口,可以同步员工部门信息,发送消息等
  • EMS4j不做什么:本项目只负责员工部门信息菜单权限的存储,以及对外提供服务;具体这些权限、菜单怎么展示给用户,是第三方业务系统的事,和EMS4j无关

项目架构

EMS4j架构图

  • EMS4j-api 定义服务接口。其他系统调用EMS4j,需依赖此jar。
  • EMS4j-service 项目核心,实现EMS4j-api接口,通过Dubbo协议向外提供服务
  • EMS4j-web 提供员工部门web后台管理,通过dubbo协议与EMS4j-Service通讯,EMS4j-web内分后台和前台两部分,后台向静态页面提供restful服务。此项目也可以作为学习调用EMS4j-service的例子程序
  • EMS4j-common 公共依赖,存放工具类等

3分钟跑起来

  • 运行条件:(1)oracle jdk 1.7 及以上;(2)安装好gradle墙内下载
  • 下载源码后,在项目根目录运行gradle zip 打包
  • 解压 zip/EMS4j-[version].zip文件
  • 先执行 bin/Ems4jService.bat(Windows)或bin/Ems4jService.sh(Linux) 运行Service
  • 再执行 bin/Ems4jWeb.bat(Windows)或bin/Ems4jWeb.sh(Linux) 运行Web控制台
本脚本同时也把service项目和web项目分别打包,可以:
  • 解压EMS4j-service/zip/EMS4j-service-[version].zip文件
  • 先执行 bin/Ems4jService.bat(Windows)或bin/Ems4jService.sh(Linux) 运行Service
  • 解压 EMS4j-web/zip/EMS4j-web-[version].zip文件
  • 再执行 bin/Ems4jWeb.bat(Windows)或bin/Ems4jWeb.sh(Linux) 运行Web控制台

构建编译环境可能遇到的问题

Eclipse中dubbo配置文件报cvc-complex-type.2.4.c: The matching wildcard is strict, but no declaration can be found for element 'dubbo:application'问题
Gradle的安装与使用
  1. 在Eclipse窗口中,依次选择 Help - Install New Software - Add
  2. http://download.eclipse.org/buildship/updates/e43/releases/1.0 粘贴在 Location 输入框中,选中显示出来的插件
  3. 将 Install 窗口中左下角的 Contact all update sites during install to find required software 选项去掉
  4. 点击 Next 安装更新直到结束
  5. 重启Eclipse更新maven工程
IntelliJ IDEA一般没问题,直接clone项目即可
Java
1
https://gitee.com/baisong/EMS4j.git
git@gitee.com:baisong/EMS4j.git
baisong
EMS4j
EMS4j
master

搜索帮助