欢迎您访问大连首闻科技有限公司,我们将竭诚为您服务 联系我们
核心系统

介绍

大连首闻核心系统(以下简称核心系统)是大连首闻科技有限公司(http://www.dlshouwen.com)推出的一套开源、高效、稳定、强大、安全的企业级J2EE框架。协助中小型软件企业降低项目开发成本、提升项目收益、获得客户认可、提升企业内开发人员综合技能及开发效率、研发态度,致力为中小型软件企业提供高精尖J2EE框架的一站式服务。

核心系统规划于2011年,于2012年正式启动,研发团队成立于2010年,初始团队成员9人,现长期对应团队核心成员5人。核心系统已经过几十个项目历练,并在多个领域项目中承担底层支撑,其优秀的用户体验及稳定的产品特性受到客户一致好评,目前我司所有项目均以此核心系统作为项目底层框架支撑。

核心系统从初建到稳定共经历了约4年的时间,共分为三个核心版本:

  • Core Classic(经典版):全名DLShouwen Core Classic,原生核心系统,提供强大完善的基础功能并提供丰富的开发辅助工具,页面样式大方稳重,支持极简普通访问模式及工作平台模式。
  • Core Lite(轻盈版):全名DLShouwen Core Lite,轻盈版核心系统,对国内短平快特性突出的中小型项目,此版本适用度最高,前端简洁实用,在经典版的基础上去掉了大量实用度不高的功能,目前我司的非互联网项目主推该版本作为项目底层支撑。
  • Core Responsive(响应式版):全名DLShouwen Core Responsive,响应式版核心系统,在经典版基础上引入bootstrap响应式前端控件,所有的功能均改为响应式访问,以适应不同的终端设备,互联网项目主推该版本。

三核心版本官方网站:

  大连首闻科技有限公司产品群 | DaLian ShouWen Products

快速高效的开发流程

核心系统经历多年的基础功能研发及优秀的底层开发设计,使用者可在短时间内应用该平台进行高效开发,提升工作效率,缩短项目研发周期,降低项目成本。核心系统无论从界面设计、程序开发上都遵循简单实用原则,通过核心系统大量原生支持的内建组件完成高效开发,提供大量基础功能及完整健全的框架文档。

简单有效是大连首闻一贯的工作态度,员工能力更侧重精雕细琢的工作态度及自主学习能力方向的引导。大连首闻所推出的任何产品均力求在高品质的基础上追求简单易用,尽最大努力降低使用者学习成本。

简洁实用的架构模式

现在主流模式为使用MVC三层架构模式,采用接口方式实现,通过领域模型完成类的定义和规划。核心系统大体符合标准思路,但为适应国内短平快项目特点进行了一定的优化和改进。

核心系统没有完全分开业务和行为,即Controller(Action)和Service,核心系统将其合二为一采用Controller实现整套业务流程。国内项目体质公司承接的项目通常工期较为紧张,且产品开发过程中、提交后依然变更频繁,为提高开发效率及变更效率,去掉繁多混乱的类文件层次是非常有必要的。

目前比较流行的项目管理体制要求分层管理,但经过大连首闻的长期同合作伙伴的交流,发现目前很多中小型企业暂时做不到真正的程序分层管理,大部分的中小型软件公司开发项目除了美工是完全剥离以外,程序的开发并不是以程序架构层级安排工作的,而是以功能点来安排开发计划,通常都是单员工制作全流程功能,这种模式是目前现有中小型甚至包括很多大型企业都在使用的模式,便于管理及产品质量的控制,市场决定价值,历练提炼精华,大连首闻针对国内项目的管理方式也以此种管理模式进行展开。

为减少员工工作量,提升项目开发效率,降低项目开发成本,核心系统去掉了所有的接口实现,只保留一个类来完成对应的功能。目前的架构为Controller负责控制和业务,Dao负责数据库,没有其他任何冗余程序。

大连首闻在考虑这种模式之前做过一个针对程序抽取的调研,通过网络及各合作伙伴的项目开发人员及技术人员给与的反馈,对于中小型企业的非产品项目几乎一致统一尽量减少业务抽取。业务抽取在某些时候确实会提高效率,但由于国内项目需求变化频繁,若存在大量业务抽取反会导致不便,极有可能在修改通用业务过程中影响其他正常业务逻辑,容易出现错误,并增加测试量,影响工期。

数据安全保障

核心系统可有效保证数据安全。对于数据入口,核心系统采用前后端双重验证方式,前端脚本验证采用大连首闻自主研发开源表单验证组件DT Validator完成,服务器端组件采用Hibernate Validator实现。对于数据库安全性,核心系统的编码方式可有效避免类似SQL注入的常见问题,详细内容请参考后续说明。

数据安全保障

核心系统提供一套完善的码表机制及参数机制。

码表(或称为数据字典)是WEB应用系统中一个普遍使用的一套体系,用于将系统的一些内建信息缓存到服务器中(Application域),然后通过自定义标签可以方便的使用码表的内容生成下拉框,或者在列表中可以很方便的通过编号获取名称。

例如,人员表中有性别字段,在真实的数据库中,性别存储是1和2,1代表男2代表女,这些信息是在码表中做维护的。码表分为多种类别,其中的某一类别是性别,性别码表说明了1代表男,2代表女,在列表展示时,开发者不必关联码表表手动获取显示内容(即男女字样),而是直接通过编号就可以显示对应的值,下拉框内容获取同理。

  码表加载机制 | Load CodeTable

核心系统在项目启动时初始化码表信息,用户对码表信息做任何增删改操作核心系统都将重新读取码表信息并重新加载到缓存中。

参数与码表的机制同理,不再冗述。

极简界面规划 *

核心系统设计从初期到现在经历了多个不同的阶段,各版本内的小版本设计也存在不同的发展过程,最终我们定了相对比较典型的三个版本来进行版本控制适应不同的项目。

* 本说明仅对Core Lite产品进行说明。

  首页展示 | Index Page

Core Lite产品设计简单实用,着重通过色彩表现元素,少有花哨。大连首闻科技有限公司设计人员受Windows设计团队影响较深,秉承通过色彩的配搭去平衡性能和美观,努力通过多彩绚丽的颜色和精致的细节营造出时尚与实用并存。

REST及RBAC功能权限体系

核心系统为便于程序可能的接口调用,采用Spring MVC原生REST风格URL完成请求响应,符合REST风格所有标准。

核心系统权限体系采用最简式RBAC标准。

RBAC的概念官方给出的是:基于角色的访问控制(Role-Based Access Control)作为传统访问控制(自主访问,强制访问)的有前景的代替受到广泛的关注。在RBAC中,权限与角色相关联,用户通过成为适当角色的成员而得到这些角色的权限。这就极大地简化了权限的管理。在一个组织中,角色是为了完成各种工作而创造,用户则依据它的责任和资格来被指派相应的角色,用户可以很容易地从一个角色被指派到另一个角色。角色可依新的需求和系统的合并而赋予新的权限,而权限也可根据需要而从某角色中回收。角色与角色的关系可以建立起来以囊括更广泛的客观情况。

核心系统中采用的RBAC权限体系完全基于角色管理,通过用户 – 角色 – 权限进行控制,所有权限均依附角色分配到具体用户,通过角色对用户进行权限体系分组,解决了一部分客户的职能规划问题。角色概念既可以被当成为用户组的概念,也可以理解为非树形结构的组织机构,可按照任何意义进行权限划分,划分后可做灵活调整。

由于客户需求多元化,核心系统权限体系在某些情况下并不完全适用,需针对客户需求做相应调整。另外,按以往项目开发经验,中小型系统通常是把角色当成用户组或组织机构来使用,大型信息化产业项目则通常有一套复杂的组织结构规划和用户组规划,有此类需求的客户需要对核心系统的权限架构进行对应的修改。

核心系统的程序权限控制通过REST访问路径进行限制处理,对于REST路径中包含数据信息(如编号等)的情况,核心系统采用通配符的形式完成解析,详细配置信息请参照后续说明。

灵活的任务机制

核心系统提供一套灵活的任务机制,可方便的生成待办事项。

  任务维护界面 | Task Edit

使用任务功能需要一定的SQL经验,并需要理解任务功能的原理,且能够熟悉系统中的基础表(及扩展的业务表)结构。具体的任务使用方式详见后续说明。

任务配置完成后,其他用户在登录时,如某任务挂载到该用户且符合任务触发条件,那么系统将会在界面右上角提示有未完成任务,用户点击即可查看任务详细信息。

  任务提醒 | Task Alert Message

完善的功能体系

核心系统包括某些常用的基础功能实现,目前已参数管理、码表管理、系统管理、功能管理、用户管理、角色管理、部门管理、在线用户管理、邮件功能、图片服务器、文件服务器、公告管理、任务管理、日志相关、辅助开发相关等功能,能够作为大多项目的基础功能实用,对于特殊的项目结构则需要相关的调整,核心系统中提供的功能大部分为常用及适应度最高的功能,程序本身亦可作为开发参考。

强大的日志功能

核心系统包含登录日志统计、操作日志统计及SQL日志统计三大统计模块。日志的展现风格均以列表及图表方式展示,其中列表用于显示日志详细信息,可进行查看某条日志明细,图表用于显示日志统计信息,图表类型支持柱状图、条图、饼状图、线图切换。日志支持快速查询及高级查询功能,查询条件将在列表及图表中同时生效。

  SQL日志功能 | SQL Log

后续支持计划

我司不承诺目前提供的后续支持计划会逐一实现,保留修改后续支持计划的所有权利。目前核心系统后续支持计划如下:

  • 常用数据库兼容,支持MySQL、Oracle、Sql Server、DB2。
  • 支持在线创建自定义表单功能。
  • 提供登录加密锁。
  • 基于Grid++Report报表研发WEB端在线设计工具。
  • 提供基础国内工作流解决方案。
  • 基于百度Echarts研发WEB端在线设计图表工具。

开源项目

DLShouWen Grid

大连首闻核心系统响应式版(Core Responsive)中使用的表格为自主研发的DLShouWen Grid。

DLShouWen Grid为响应式表格,针对不同规格的终端显示不同的列,对于不显示的列将显示在扩展中,通过点击展开查看。同时,DLShouWen Grid原生支持分页、Ajax数据集、打印、导出、快速查询、高级查询等操作,且使用简单,针对DLShouWen Grid,大连首闻核心系统中的工具类中有针对此组件的相关工具,使得开发人员使用DLShouWen Grid更加高效方便。

目前DLShouWen Grid组件已经开源,欢迎您的访问和使用。

官方网站:   DLShouWen Grid官方网站      捐助DLShouWen Grid开源项目

DLShouWen Validator

大连首闻核心系统所有版本中使用的前端验证组件为自主研发的DLShouWen Validator。

DLShouWen Validator为一组方便快捷的前端验证组件,通过表单元素标签属性的形式绑定验证规则,避免繁杂的JS规则定义模式。DLShouWen Validator支持多种验证规则,且原生支持Ajax服务器端验证。

大连首闻核心系统中的工具类有针对此组件的相关工具,可以快速生成包含验证规则的表单,使得开发过程更为高效方便。同时,大连首闻核心系统对Spring MVC提供的自定义标签进行了二次封装,使其直接支持DLShouWen Validator组件的定义。

目前DLShouWen Validator组件已经开源,欢迎您的访问和使用。

官方网站:   DLShouWen Validator官方网站      捐助DLShouWen Validator开源项目