为什么80%的码农都做不了架构师?>>>   

平台简介

JeeSite是基于多个优秀的开源项目,高度整合封装而成的高效,高性能,强安全性的开源Java EE快速开发平台。

JeeSite本身是以Spring Framework为核心容器,Spring MVC为模型视图控制器,MyBatis为数据访问层, Apache Shiro为权限授权层,Ehcahe对常用数据进行缓存,Activit为工作流引擎。

JeeSite主要定位于企业信息化领域,已内置企业信息化系统的基础功能和高效的代码生成工 具, 包括:系统权限组件、数据权限组件、数据字典组件、核心工具组件、视图操作组件、工作流组件、代码生成等。 前端界面风格采用了结构简单、性能优良、页面美观大气的Twitter Bootstrap页面展示框架。 采用分层设计、双重验证、提交数据安全编码、密码加密、访问验证、数据权限验证。 使用Maven做项目管理,提高项目的易开发性、扩展性。

JeeSite目前包括以下三大模块,系统管理(SYS)模块、 内容管理(CMS)模块、在线办公(OA)模块、代码生成(GEN)模块。 系统管理模块,包括企业组织架构(用户管理、机构管理、区域管理)、 菜单管理、角色权限管理、字典管理等功能; 内容管理模块 ,包括内容管理(文章、链接),栏目管理、站点管理、 公共留言、文件管理、前端网站展示等功能; 在线办公模块 ,提供简单的请假流程实例。

JeeSite 提供了常用工具进行封装,包括日志工具、缓存工具、服务器端验证、数据字典、当前组织机构数据 (用户、机构、区域)以及其它常用小工具等。另外还提供一个强大的在线 代码生成 工具, 此工具提供简单的单表、一对多、树结构功能的生成,如果对外观要求不是很高,生成的功能就可以用了。 如果你使用了JeeSite基础框架,就可以很高效的快速开发出,优秀的信息管理系统。

内置功能

  1. 用户管理:用户是系统操作者,该功能主要完成系统用户配置。
  2. 机构管理:配置系统组织机构(公司、部门、小组),树结构展现,可随意调整上下级。
  3. 区域管理:系统城市区域模型,如:国家、省市、地市、区县的维护。
  4. 菜单管理:配置系统菜单,操作权限,按钮权限标识等。
  5. 角色管理:角色菜单权限分配、设置角色按机构进行数据范围权限划分。
  6. 字典管理:对系统中经常使用的一些较为固定的数据进行维护,如:是否、男女、类别、级别等。
  7. 操作日志:系统正常操作日志记录和查询;系统异常信息日志记录和查询。
  8. 连接池监视:监视当期系统数据库连接池状态,可进行分析SQL找出系统性能瓶颈。
  9. 工作流引擎:实现业务工单流转、在线流程设计器。

为何选择JeeSite

  1. 使用 Apache License 2.0 协议,源代码完全开源,无商业限制。
  2. 使用目前主流的Java EE开发框架,简单易学,学习成本低。
  3. 数据库无限制,目前支持MySql、Oracle,可扩充SQL Server、PostgreSQL、H2等。
  4. 模块化设计,层次结构清晰。内置一系列企业信息管理的基础功能。
  5. 操作权限控制精密细致,对所有管理链接都进行权限验证,可控制到按钮。
  6. 数据权限控制精密细致,对指定数据集权限进行过滤,七种数据权限可供选择。
  7. 提供在线功能代码生成工具,提高开发效率及质量。
  8. 提供常用工具类封装,日志、缓存、验证、字典、组织机构等,常用标签(taglib),获取当前组织机构、字典等数据。
  9. 兼容目前最流行浏览器(IE7+、Chrome、Firefox)IE6也支持,但体验效果差。

技术选型

1、后端

  • 核心框架:Spring Framework 4.0
  • 安全框架:Apache Shiro 1.2
  • 视图框架:Spring MVC 4.0
  • 服务端验证:Hibernate Validator 5.1
  • 布局框架:SiteMesh 2.4
  • 工作流引擎:Activiti 5.15、FoxBPM 6
  • 任务调度:Spring Task 4.0
  • 持久层框架:MyBatis 3.2
  • 数据库连接池:Alibaba Druid 1.0
  • 缓存框架:Ehcache 2.6、Redis
  • 日志管理:SLF4J 1.7、Log4j
  • 工具类:Apache Commons、Jackson 2.2、Xstream 1.4、Dozer 5.3、POI 3.9

2、前端

  • JS框架:jQuery 1.9。
  • CSS框架:Twitter Bootstrap 2.3.1。
  • 客户端验证:JQuery Validation Plugin 1.11。
  • 富文本:CKEcitor
  • 文件管理:CKFinder
  • 动态页签:Jerichotab
  • 手机端框架:Jingle
  • 数据表格:jqGrid
  • 对话框:jQuery jBox
  • 下拉选择框:jQuery Select2
  • 树结构控件:jQuery zTree
  • 日期控件: My97DatePicker

4、平台

  • 服务器中间件:在Java EE 5规范(Servlet 2.5、JSP 2.1)下开发,支持应用服务器中间件 有Tomcat 6、Jboss 7、WebLogic 10、WebSphere 8。
  • 数据库支持:目前仅提供MySql或Oracle数据库的支持,但不限于数据库,平台留有其它数据库支持接口, 可方便更改为其它数据库,如:SqlServer 2008、MySql 5.5、H2等
  • 开发环境:Java EE、Eclipse、Maven、Git

安全考虑

  1. 开发语言:系统采用Java 语言开发,具有卓越的通用性、高效性、平台移植性和安全性。
  2. 分层设计:(数据库层,数据访问层,业务逻辑层,展示层)层次清楚,低耦合,各层必须通过接口才能接入并进行参数校验(如:在展示层不可直接操作数据库),保证数据操作的安全。
  3. 双重验证:用户表单提交双验证:包括服务器端验证及客户端验证,防止用户通过浏览器恶意修改(如不可写文本域、隐藏变量篡改、上传非法文件等),跳过客户端验证操作数据库。
  4. 安全编码:用户表单提交所有数据,在服务器端都进行安全编码,防止用户提交非法脚本及SQL注入获取敏感数据等,确保数据安全。
  5. 密码加密:登录用户密码进行SHA1散列加密,此加密方法是不可逆的。保证密文泄露后的安全问题。
  6. 强制访问:系统对所有管理端链接都进行用户身份权限验证,防止用户

快速体验

  1. 具备运行环境:JDK1.6+、Maven3.0+、MySql5+或Oracle10g+。
  2. 修改src\main\resources\jeesite.properties文件中的数据库设置参数。
  3. 根据修改参数创建对应MySql或Oracle数据库用户和参数。
  4. 运行bin\init-db.bat脚本,即可导入表结构及演示数据(linux操作系统:在控制台中切换至项目根目录,运行命令:mvn antrun:run -Pinit-db)
  5. 运行bin\run-tomcat7.bat或bin\run-jetty.bat,启动Web服务器(第一次运行,需要下载依赖jar包,请耐心等待)。
  6. 最高管理员账号,用户名:thinkgem 密码:admin

常见问题

  1. 有时出现文字乱码:修改Tomcat的server.xml文件的Connector项,增加URIEncoding="UTF-8"
  2. 用一段时间提示内存溢出,请修改JVM参数:-Xmx512m -XX:MaxPermSize=256m
  3. 为什么新建菜单后看不到新建的菜单?因为授权问题,菜单管理只允许最高管理员账号管理(最高管理员默认账号:thinkgem 密码:admin)。

更多文档

  • https://github.com/thinkgem/jeesite/tree/master/doc

如何交流、反馈、参与贡献?

  • QQ Group:127515876   209330483   223507718
  • GitHub:https://github.com/thinkgem/jeesite
  • 开源中国:http://git.oschina.net/thinkgem/jeesite
  • 捐赠支持JeeSite(支付宝):thinkgem@163.com

一个人的个人能力再强,也无法战胜一个团队,希望兄弟姐妹的支持,能够贡献出自己的部分代码,参与进来共同完善它(_)。

怎么共享我的代码:手把手教你如何加入到github的开源世界!

版权声明

本软件使用 Apache License 2.0 协议,请严格遵照协议内容:

  1. 需要给代码的用户一份Apache Licence。
  2. 如果你修改了代码,需要在被修改的文件中说明。
  3. 在延伸的代码中(修改和有源代码衍生的代码中)需要带有原来代码中的协议,商标,专利声明和其他原来作者规定需要包含的说明。
  4. 如果再发布的产品中包含一个Notice文件,则在Notice文件中需要带有Apache Licence。你可以在Notice中增加自己的许可,但不可以表现为对Apache Licence构成更改。
  5. Apache Licence也是对商业应用友好的许可。使用者也可以在需要的时候修改代码来满足需要并作为开源或商业产品发布/销售

为何使用MyBatis

  • 学习成本:Hibernate的真正掌握要比Mybatis来得难不少。Mybatis框架相对简单很容易上手,也更加灵活。 对于学习过Hibernate的用户,学习起MyBatis也更容易上手。

  • 开发成本:大家都说Hibernate开发效率高,个人认为MyBatis的开发效率并不比Hibernate低, 通过代码生成器和封装开发效率不是问题,并且MyBatis可控性比较高,并更易于维护。

  • 性能方面:由于Hibernate比较难以掌握,性能方面也成为了 Hibernate的问题瓶颈,当然如果你对Hibernate非常熟, Hibernate性能上定不是问题。但对于大多数情况下,真正掌握Hibernate的人少之又少,然而的也就造就了项目风险加大。

  • 多数据库支持:有些人说MyBatis对多数据库支持困难,我认为这个不是 问题,虽说目前JeeSite仅提供对MySql和Oracle 数据库的支持,但对于支持其它数据库的改动也不是很麻烦,SQL是被专门写在XML中,对于大多数SQL来说都是通用的, 对于不同的数据库可通过dbName区分和修改各别的SQL片段即可。

上述纯属个人观点,欢迎指正(thinkgem@163.com)。

如果你仍然喜欢Hibernate,请点击下载JeeSite Hibernate版本。

转载于:https://my.oschina.net/boonya/blog/709785

企业信息化快速开发平台JeeSite相关推荐

  1. JeeSite 企业信息化快速开发平台

    点击打开链接 具体的请查看文档 有关使用jeesite开发笔记:http://m.blog.csdn.net/article/details?id=51251619

  2. 企业应用快速开发平台

    企业应用快速开发平台 目  录 TU1需求UT 2 TU2目标UT 2 TU3技术方案UT 3 TU4技术线路UT 4 TU4.1AOP技术UT 4 TU4.2IOC技术UT 5 TU4.3企业功能组 ...

  3. Jeesite信息化快速开发平台

    平台简介 JeeSite是基于多个优秀的开源项目,高度整合封装而成的高效,高性能,强安全性的开源Java EE快速开发平台. JeeSite是您快速完成项目的最佳基础平台解决方案,JeeSite是您想 ...

  4. 快速开发平台:企业信息化建设的不二选择

    随着计算机和信息化技术的发展,企业的信息化建设日趋完善,企业管理对信息化的依赖程度也越来越高.ERP.OA.BPM等系统,作为企业信息化的标配,一直以来占据着企业信息管理的核心地位. 由于这类应用涉及 ...

  5. java企业级快速开发平台jeeadminlte(jeesite大胖老师修改版)

    JeeAdminlte码云下载地址:https://gitee.com/dptc/jeeadminlte 此JeeAdminlte是大胖老师在开源平台企业级Java快速开发平台jeesite的基础上进 ...

  6. JavaEE企业级快速开发平台jeesite4的使用和快速搭建项目

    场景 JeeSIte是一个JavaEE企业级快速开发平台,基于经典技术组合(SpringBoot.Apache Shiro .MyBatis.Beetl.Bootstrap)在线代码生成工具,支持Sp ...

  7. JeeSite快速开发平台 JNPF Java3.3.2 3.3.3快速开发平台框架源码

    JeeSite JeeSite 快速开发平台的主要目的是能够让初级的研发人员快速的开发出复杂的业务功能,中高级人员有时间做一些更有用的事情.让开发者注重专注业务,其余有平台来封装技术细节,降低技术难度 ...

  8. JeeSite 快速开发平台

    http://www.jeesite.com/ JeeSite 4.0 天下武功,为快不破!采用主流技术! 通俗易懂,快速开发,快速交付,安全保障 JeeSite 平台介绍 Platform is i ...

  9. 浅谈快速开发平台:突破系统开发边界,赋能企业数字化!

    快速开发平台,简单地说就是指那些不用编码或通过少量代码,就可以快速开发应用程序的平台.既可以降低开发人力成本,又可以缩短开发时间,从而实现企业降本增效的价值. 今天为大家介绍4款成熟业务的快速开发平台 ...

最新文章

  1. Codeforces 894.D Ralph And His Tour in Binary Country
  2. 你不曾见过的酷炫地图可视化作品(一)
  3. jQuery第二天(操作样式、属性、节点、动画)
  4. Linux 下 VNC配置和使用(本机控制本机)
  5. deepin 安装 kvm-manager
  6. java用流体加减乘除_任意输入两个数,完成加法、减法、乘法、除法运算!(加减乘除运算分别定义四个方法)_学小易找答案...
  7. pytorch以特征图的输入方式训练LSTM模型
  8. h3c c语言题库,H3C认证试题
  9. c++矩阵库eigen的使用方法
  10. python 重启同一个程序_Python – 在重启之间保存程序的状态?
  11. jetson nano 人体姿态识别
  12. 为什么要学习数据库以及数据库的选择
  13. 获取随机数的n种方法,你知道几种
  14. markdown中插入emoji表情方法总结,让你尽情使用表情符号
  15. GNU系统下DL_POLY的编译
  16. 05.Laravel post提交失败 返419 | Page Expired
  17. Shamir 门限秘密共享
  18. 《下班后开始新的一天》阅读笔记
  19. 免费做淘宝TOP Taoapi.com测试平台历程
  20. 帝国理工计算机专业难申吗,帝国理工最难申请的十大专业,A-Level成绩要求是多少?...

热门文章

  1. 具有缺失值的多元时间序列的递归神经网络
  2. 为你解读7大类深度CNN架构创新综述(附论文)
  3. SAP MM T-code MD04的使用,是有前提的!
  4. 神经网络早期的感知机模型
  5. 为什么AI感知与人类感知无法直接比较?
  6. 论文速读:AI能从人类的愚蠢中学到什么?
  7. 混合云关键技术能力和发展趋势
  8. 什么是智能仓储?一文带你彻底搞懂!
  9. 量子算法、DNA计算与后经典计算时代
  10. 实现计算机界“大满贯”,芮勇博士再获技术成就大奖