企业办公管理系统,可以提供强大的模块化服务,帮助企业进行诸如制定计划、组织活动、上班考勤、领导管理和日志记录等功能,各个部分以模块化进行划分,软件具体可以分为部门管理、角色管理、用户管理、考勤管理、日志管理等部分。

这个系统使用了现在很流行的开发软件和相关技术,使用了目前最流行最方便的JAVA框架——SpringBoot框架,安全的shiro权限管理解决方案、前端使用了Thymeleaf作为模板语言,关系型数据库框架——mybatis,其中的MySQL数据库是中小型数据处理的最优选择方案。

SpringBoot框架是继spingMVC框架之后的有一个非常受欢迎的框架,具有很高的实用性,大大地减少了框架搭建之时的各种配置工作。是目前最优秀的JAVA框架,可以说是当SpringBoot框架出现之后,别的框架就黯然失色。该特性使开发人员能够摆脱复杂的配置工作和依赖的管理工作,更加关注业务逻辑。

项目特点

1.项目基于SpringBoot,简化了大量的配置和Maven依赖。
2.日志记录系统,记录用户的登陆、登出,用户执行的操作,通过@BizLog注解以及Spring中的AOP功能,记录了具体到用户的业务操作、登入登出,并且可以下载excel格式,方便查看。
3.利用Thymeleaf使得前端html代码看起来更加清晰。
4.通过角色管理来配置菜单,达到菜单为不同部门显示的目的,间接实现了权限的管理。
5.创建表后,通过LinGenerater类可生成包括html、js、Dao、Service、Controller等代码,复制进项目可直接使用。

javabean方式的配置文件

Lin中摒弃了传统的xml配置文件,使得配置文件更加清晰、简洁,下列为Shrio配置文件中的片段

@Configuration
public class ShiroConfig {/*** 安全管理器* @param rememberMeManager* @return*/@Beanpublic DefaultWebSecurityManager securityManager(CookieRememberMeManager rememberMeManager){DefaultWebSecurityManager securityManager = new DefaultWebSecurityManager();securityManager.setRememberMeManager(rememberMeManager);securityManager.setRealm(this.shiroDbRealm());return securityManager;}@Beanpublic ShiroDbRealm shiroDbRealm(){return new ShiroDbRealm();}

代码生成

项目借助Mybatis Plus代码生成器生成Bean以及Dao,通过Velocity生成Controller、Service、ServiceImpl、html、js文件。在数据库中创建新表后,代码生成文件即可根据此表生成上述文件,实现了基本的表格展示、增删改查功能,可直接复制进项目中直接使用,添加菜单数据到数据库,即可在项目中看到此菜单页面。

 public static void main(String[] args) throws IOException {
//      参数为表名LinGenerater lg = new LinGenerater("thing");
//      此方法可以生成代码lg.execute();
//      此方法可以插入菜单数据lg.insertMenu("thing", "测试生成", "globe");}   

日志记录

日志记录通过aop(LogAop类)方式对所有包含@BizLog注解的方法进行aop切入,通过@Bizlog注解中的value属性来获取用户所做的操作,封装为日志类,异步存入数据库中(通过
ScheduledThreadPoolExecutor类)。

@Pointcut("@annotation(com.du.lin.annotation.BizLog)")public void logCut() {}

使用Thymeleaf使得html代码更简洁

下面是便签功能实现的部分片段。 后端:

 List<Memo> list = service.getUserMemoList();request.setAttribute("memolist", list);

前端html:

 <li th:each="memo,memoStat:${memolist}"><div><small th:text="${memo.time}"></small><small th:text="${memo.time}"></small><h4 th:text="${memo.title}"></h4><p th:text="${memo.text}"></p><a th:id="${memo.id}" onclick="deletememodialog(this)">   <i class="fa fa-trash-o "></i></a></div></li>

所用框架

前端

  1. Bootstrap
  2. jQuery
  3. jqGrid
  4. jstree
  5. SweetAlert

后端

  1. SpringBoot
  2. MyBatis Plus
  3. Spring
  4. Thymeleaf
  5. Ehcache
  6. Kaptcha
  7. Shiro
  8. Velocity

项目演示视频如下

基于SpringBoot框架的企业办公管理系统

基于java SpingBoot框架的企业办公管理系统相关推荐

  1. 基于Java的简单的企业员工管理系统

    基于Java的简单的企业员工管理系统 首先创建了一个员工类 定义员工应有的属性:工号.姓名.性别.职位.年龄.工资.部门 /** 员工属性 */ private int sno;//工号private ...

  2. 基于java+SpringBoot框架蛋糕销售商城管理系统详细设计

    研究背景 随着计算机技术的飞速发展,供应商可以利用计算机技术来完成我们以前手工完成的一些工作,这可以大大提高工作效率,节省更多的人力资源.此外,电脑还可以对相关数据进行统计,帮助卖家根据销售情况制定销 ...

  3. 基于JAVA+SpringMVC+MYSQL的企业员工管理系统

    项目功能: 系统包括用户登录.部门管理.职员管理.奖惩管理.薪资管理.培训管理.招聘管理.报表管理.系统管理等功能 页面效果:

  4. 基于java+ssm+mysql的企业审批管理系统

    系统介绍: 1.用户登录功能,能够进行验证码验证 2.权限管理功能,根据不同权限内容功能也不同,分管理员和员工 3.能够进行日常工作审批功能,其中包括出差管理.请假管理.日常报表管理(增删改查) 4. ...

  5. JAVA毕业设计机械生产企业办公设备管理系统计算机源码+lw文档+系统+调试部署+数据库

    JAVA毕业设计机械生产企业办公设备管理系统计算机源码+lw文档+系统+调试部署+数据库 JAVA毕业设计机械生产企业办公设备管理系统计算机源码+lw文档+系统+调试部署+数据库 本源码技术栈: 项目 ...

  6. SpringBoot框架的基于java的疫情期间网课管理系统

    活动地址:毕业季·进击的技术er 博主介绍:✌在职Java研发工程师.专注于程序设计.源码分享.技术交流.专注于Java技术领域和毕业设计✌ 项目名称 SpringBoot框架的基于java的疫情期间 ...

  7. 基于JAVA成都某4S店销售管理系统计算机毕业设计源码+系统+lw文档+部署

    基于JAVA成都某4S店销售管理系统计算机毕业设计源码+系统+lw文档+部署 基于JAVA成都某4S店销售管理系统计算机毕业设计源码+系统+lw文档+部署 本源码技术栈: 项目架构:B/S架构 开发语 ...

  8. 基于JAVA珠宝首饰进销存管理系统计算机毕业设计源码+系统+lw文档+部署

    基于JAVA珠宝首饰进销存管理系统计算机毕业设计源码+系统+lw文档+部署 基于JAVA珠宝首饰进销存管理系统计算机毕业设计源码+系统+lw文档+部署 本源码技术栈: 项目架构:B/S架构 开发语言: ...

  9. 基于JAVA演唱会门票订售及管理系统计算机毕业设计源码+系统+lw文档+部署(2)

    基于JAVA演唱会门票订售及管理系统计算机毕业设计源码+系统+lw文档+部署(2) 基于JAVA演唱会门票订售及管理系统计算机毕业设计源码+系统+lw文档+部署(2) 本源码技术栈: 项目架构:B/S ...

  10. 基于Java毕业设计校园疫情防控管理系统源码+系统+mysql+lw文档+部署软件

    基于Java毕业设计校园疫情防控管理系统源码+系统+mysql+lw文档+部署软件 基于Java毕业设计校园疫情防控管理系统源码+系统+mysql+lw文档+部署软件 本源码技术栈: 项目架构:B/S ...

最新文章

  1. window.open打开一个新空白页面,不会自动刷新【解决方案】
  2. Scala键盘录入代码示例
  3. EasyUI datagrid : 启用行号、固定列及多级表头后,头部行号位置单元格错位的问题...
  4. decimal 类型数据怎么引用_Java基本数据类型和引用类型
  5. myeclipse springboot 运行内存溢出_springboot学习心得 - aowumao
  6. SpringMVC请求处理流程、springMVC工作流程
  7. 加强型的记录集权限(数据集权限、约束表达式设置功能)实现方法界面参考...
  8. linux gpt分区看不到,Linux无法看到我的任何分区 – 备份GPT表不在磁盘的末尾
  9. fprom预测结果内容_预测模型之机器学习 Machine Learning结果解读篇
  10. 利用React/anu编写一个弹出层
  11. remoting的Client如果访问IIS宿主server端要通过Firewall怎么办?
  12. python下载网易云音乐付费歌曲有哪些_学习python总结 - 下载网易云音乐单首歌曲...
  13. 01 #pragma once用法总结
  14. Dropshipping在Facebook广告语怎么写?
  15. 论文笔记:ALA loss:Adaptive Logit Adjustment Loss for Long-Tailed Visual Recognition
  16. 解决绿C(C与C++程序设计学习与实验系统 2015)软件程序中文出现乱码问题
  17. java五个数以升序排列,java4个数的数组排列
  18. java计算机毕业设计基于安卓Android的城市公交查询app(源码+系统+mysql数据库+Lw文档)
  19. 面试太卷,我选择背八股。。。
  20. 只需8步,轻松构建用户画像标签体系

热门文章

  1. 调试经验——使用VBA下载网络资源
  2. 复信号在信号处理中的意义
  3. 区块链技术驱动商业银行开展供应链金融业务的创新路径
  4. 手机android安装程序,Android手机程序安装指南
  5. Oracle数据库备份与还原
  6. SecureCRT配置详细图文教程
  7. Android OTA本地自动升级实现
  8. 联想Lenovo手机平板安装谷歌服务框架Google, Play商店,安装套件GMS
  9. java毕业设计博弈论学习网站Mybatis+系统+数据库+调试部署
  10. python vbscript_VBScript学习笔记