CN102103513A - 一种使用元数据和中间件快速开发软件的方法 - Google Patents
一种使用元数据和中间件快速开发软件的方法 Download PDFInfo
- Publication number
- CN102103513A CN102103513A CN2011100468658A CN201110046865A CN102103513A CN 102103513 A CN102103513 A CN 102103513A CN 2011100468658 A CN2011100468658 A CN 2011100468658A CN 201110046865 A CN201110046865 A CN 201110046865A CN 102103513 A CN102103513 A CN 102103513A
- Authority
- CN
- China
- Prior art keywords
- metadata
- software
- middleware
- user
- needs
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Landscapes
- Stored Programmes (AREA)
Abstract
本发明涉及一种使用元数据和中间件快速开发软件的方法,其特征在于,无需编码只需要设置元数据即可实现一般需求的数据的添加、修改、删除、查询、权限验证、权限过滤、个性化设置、导出数据到Excel的功能,即设置相应的元数据后,中间件即可根据元数据自动运行;本发明的有益效果是:提高了软件的开发速度、维护速度,降低了软件的开发、维护成本,大大减少了工作量,节省了开发时间,提高了软件公司的竞争力,方便了最终用户和软件公司的沟通,提高了用户的权限设置、个性化设置的便捷性。
Description
技术领域
本发明涉及一种使用元数据和中间件快速开发软件的方法,属于信息技术领域。
背景技术
现在一般的软件开发方式都是需要进行编码才可以实现用户的需求,都存在以下缺点和问题:(1)需要编写大量的软件代码,消耗大量的人力物力;(2)软件代码多了,出现软件漏洞的机会也会增多;(3)编写新的软件代码和修改原有软件代码完成后都需要进行相应的测试,软件代码越多测试的工作量也就越大;(4)当用户的需求发生变化的时候,还得需要修改软件代码;(5)从用户提出需求到程序员编写软件代码实现用户需求的功能的这个开发周期往往过长;(6)软件技术,例如.net版本升级的时候,原来编写的软件代码越多,升级也就越繁琐。
发明内容
本发明的目的在于提供一种能够克服上述技术问题的使用元数据和中间件快速开发软件的方法。
本发明包括以下步骤:
(1)根据项目、软件的需求,设计数据库,并且使用Excel保存数据库文档;
(2)建立数据库,生成元数据;
(3)设置功能节点的元数据;
(4)设置列表里显示数据需要的元数据;同时也是导出Excel需要的元数据;
(5)设置列表里需要的查询条件的元数据;
(6)设置表单里需要的字段的元数据;
(7)设置分页控件需要的元数据;
(8)设置添加修改、删除数据的方式,添加、修改、查看、删除涉及的表名(视图名)以及页面的部分文字显示;
(9)通过设置元数据,调整页面布局;
(10)软件、项目上线后,由用户(即角色管理员)通过中间件提供的功能设置权限,以实现不同用户账号有不同的功能的效果;
(11)软件、项目上线后,用户可以依据自己的喜好,通过中间件提供的功能,在权限范围内实现个性化设置。
本发明实现个性化设置的步骤如下:
(1)使用元数据和中间件开发软件的过程中无需考虑个性化的问题;
(2)软件写好后,用户在权限的范围内进行个性化的设置而无需编写相应的代码;
(3)列表里面显示自己需要的列(字段)、导出Excel只导出自己需要列(字段)、查询条件里只显示自己需要的查询条件。
所述元数据是一组有一定信息和含义的数据,是对数据库,包括表、字段、视图、存储过程等)的说明,是对软件的功能节点、列表信息、表单信息、导出Excel信息、权限信息、个性化信息的描述说明;即把软件进行数据化来描述软件和数据库。
所述中间件包括类库和自定义控件以及javascript脚本,jQuery、jQueryUI、ExtJs脚本库的使用和封装;所述中间件包括基础控件、表单控件、查询控件、分页控件、数据显示控件、功能按钮控件、多级联动下拉列表框、数据访问类库、SQL语句处理类库、登录用户类库、页面基类、树状功能菜单、Ashx页面;所述基础控件是一些简单、常用的控件,比如文本框、下拉列表框、复选框、单选框等控件;所述表单控件用于实现添加、修改功能的页面显示、数据验证、数据提交;所述查询控件用于查询条件的页面显示和拼接查询条件;所述分页控件用于对数据进行分页;所述数据显示控件用于显示数据;所述功能按钮控件用于实现列表页面里的功能按钮;所述多级联动下拉列表框用于多级分类的显示,比如省市、区、县的显示;所述数据访问类库用于数据库的访问;所述SQL语句处理类库用于SQL语句的拼接,以实现对数据的添加、修改、查询、删除、分页的功能;所述登录用户类库用于用户登录、退出功能的实现和保存登录用户的一些常用信息(比如用户名、用户的角色、用户的部门等)以及权限的验证功能;所述页面基类用于实现各种页面里共用的功能以及权限的过滤和验证;所述树状功能菜单用于功能的显示以及权限的过滤;所述Ashx页面用于实现数据的删除。
本发明将部分元数据设置成控件的属性,控件在运行时,可以动态加载不同的元数据作为其属性值,控件根据加载的元数据实现对应的功能节点的各种功能。比如加载的是公司信息的元数据,那么就可以实现公司信息的添加、修改、删除、分页、查询、导出、权限验证、权限过滤、个性化等功能;如果加载的是产品信息的元数据,那么就可以实现产品信息的添加、修改、删除、分页、查询、导出、权限验证、权限过滤、个性化等功能。
本发明将另一部分元数据作为SQL语句处理类库运行时需要的信息,然后类库可以按照元数据来拼接需要的SQL来实现一些功能,比如添加、修改、删除、查询和分页,即SQL语句处理类库根据不同的元数据拼接出来需要的SQL语句,包括参数化SQL语句和存储过程的参数。
本发明的有益效果是:无需编码只需要设置元数据即可实现一般需求的数据的添加、修改、删除、查询、权限验证、权限过滤、个性化设置、导出数据到Excel的功能。即设置相应的元数据后,中间件即可根据元数据自动运行,能够快速实现用户的基本需求甚至可以在用户的公司进行现场开发,实现一个功能模块后,就可以和用户核对程序功能是否能够满足用户的业务需求,缩短了和客户的交互周期,避免了软件产生软件漏洞的现象,软件测试也非常简单,如果用户的需求有变动,本发明只要现场改动一下元数据即能实现用户的需求而无需重新编译;软件技术升级时只需要选择对应的中间件,不需要修改元数据;提高了软件的开发速度、维护速度,降低了软件的开发、维护成本,大大减少了工作量,节省了开发时间,提高了软件公司的竞争力,方便了最终用户和软件公司的沟通,提高了用户的权限设置、个性化设置的便捷性。
具体实施方式
下面结合具体实施例对本发明进行详细描述,本发明实施例中采用Excel文档来记录数据库文档,根据数据库和规定的格式,编写数据库文档,为了便于实现,本发明的实施例采用自然框架支持平台来运行或管理元数据;其分为以下几个步骤:
1)在线查看数据库文档;
2)根据数据库文档建立数据库;
3)根据数据库文档建立需要的元数据;
4)建立软件的功能节点(即树状功能菜单和横向菜单);
5)进行列表页面(即数据列表)、导出Excel、表单页面(即添加、修改数据用的表格)、查询功能、分页显示数据的功能的元数据设置;
6)设置页面里的功能按钮,比如添加、修改、删除等按钮;
7)根据业务逻辑需求,自动生成实体类的属性定义部分的代码;
8)设置权限里的资源过滤的过滤条件。
完成以上步骤即可实现一般的增、删、改、查的功能;权限设置可以交由用户自行设置;个性化设置也是由用户自行设置。本发明是针对程序员所用的而不是针对最终用户开发的;本发明只是对编程的一个辅助,可以用本发明实现一般的增删改查、权限过滤和验证、导出Excel、个性化设置等功能,本发明可以把需要的数据导入到指定的实体类里面,然后程序员可以针对这个实体类来实现特殊的业务需求。
例如,表单控件可以根据元数据自行绘制表单,例如,如果元数据里规定,需要一个“公司名”的字段,这个字段对应的是一个文本框(TextBox),那么表单控件就会根据这条元数据来绘制出来一个文本框。在用户输入数据后,可以根据元数据的规定进行验证。修改数据的时候,会根据元数据把要修改的数据提取出来,绑定到对应的控件,以便于用户修改数据。查询控件也是同样的道理,如果元数据规定,需要一个“新闻分类”的字段,这个字段对应的是一个下拉列表框,那么查询控件就会根据这条元数据绘制出来一个下拉列表框,然后查询控件会根据元数据里规定的查询方式,比如模糊查询来组成查询条件,数据显示控件根据元数据里的规定显示相应的列或字段,然后把需要的数据显示出来。
本发明使用元数据和中间件开发软件,开发过程中无需考虑权限的问题;本发明的权限的设置交给用户(即权限管理员)自行维护,用户根据自己的实际情况自行设置各种权限而无需编写相应的代码,然后给员工分配相应的权限即可。;这样不仅便于用户使用,而且大大减少了软件公司与用户交流的次数,从而极大地降低了软件成本。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明公开的范围内,能够轻易想到的变化或替换,都应涵盖在本发明权利要求的保护范围内。
Claims (4)
1.一种使用元数据和中间件快速开发软件的方法,其特征在于,包括以下步骤:
(1)根据项目、软件的需求,设计数据库,并且使用Excel保存数据库文档;
(2)建立数据库,生成元数据;
(3)设置功能节点的元数据;
(4)设置列表里显示数据需要的元数据;同时也是导出Excel需要的元数据;
(5)设置列表里需要的查询条件的元数据;
(6)设置表单里需要的字段的元数据;
(7)设置分页控件需要的元数据;
(8)设置添加修改、删除数据的方式,添加、修改、查看、删除涉及的表名以及页面的部分文字显示;
(9)通过设置元数据,调整页面布局;
(10)软件、项目上线后,由用户通过中间件提供的功能设置权限,以实现不同用户账号有不同的功能的效果;
(11)软件、项目上线后,用户可以依据自己的喜好,通过中间件提供的功能,在权限范围内实现个性化设置。
2.根据权利要求1所述的一种使用元数据和中间件快速开发软件的方法,其特征在于,实现个性化设置的步骤如下:
(1)使用元数据和中间件开发软件,开发过程中无需考虑个性化的问题;
(2)软件写好后,用户在权限的范围内进行个性化的设置而无需编写相应的代码;
(3)列表里面显示自己需要的列、导出Excel只导出自己需要列、查询条件里只显示自己需要的查询条件。
3.根据权利要求1所述的一种使用元数据和中间件快速开发软件的方法,其特征在于,使用元数据和中间件开发软件的过程中无需考虑权限的问题;权限的设置交给用户自行维护,用户根据自己的实际情况自行设置各种权限而无需编写相应的代码,然后给员工分配相应的权限即可。
4.根据权利要求1所述的一种使用元数据和中间件快速开发软件的方法,其特征在于,采用自然框架支持平台来运行管理元数据;其分为以下几个步骤:
(1)在线查看数据库文档;
(2)根据数据库文档建立数据库;
(3)根据数据库文档建立需要的元数据;
(4)建立软件的功能节点,即树状功能菜单和横向菜单;
(5)进行列表页面、导出Excel、表单页面、查询功能、分页显示数据的功能的元数据设置;
(6)设置页面里的功能按钮;
(7)根据业务逻辑需求,自动生成实体类的属性定义部分的代码;
(8)设置权限里的资源过滤的过滤条件。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 201110046865 CN102103513B (zh) | 2011-02-25 | 2011-02-25 | 一种使用元数据和中间件快速开发软件的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 201110046865 CN102103513B (zh) | 2011-02-25 | 2011-02-25 | 一种使用元数据和中间件快速开发软件的方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102103513A true CN102103513A (zh) | 2011-06-22 |
CN102103513B CN102103513B (zh) | 2013-09-25 |
Family
ID=44156305
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN 201110046865 Expired - Fee Related CN102103513B (zh) | 2011-02-25 | 2011-02-25 | 一种使用元数据和中间件快速开发软件的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102103513B (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103294477A (zh) * | 2013-06-14 | 2013-09-11 | 张昀 | 使用Office文档进行移动开发项目管理的方法 |
CN104391725A (zh) * | 2014-12-08 | 2015-03-04 | 畅捷通信息技术股份有限公司 | 页面展示方法和页面展示装置 |
CN105631266A (zh) * | 2015-12-28 | 2016-06-01 | 上海赞越软件服务中心 | 通过jQuery壳的多用户切换机制 |
CN106325832A (zh) * | 2015-06-18 | 2017-01-11 | 阿里巴巴集团控股有限公司 | 数据生成的方法和装置 |
CN108804134A (zh) * | 2018-06-20 | 2018-11-13 | 上海哔哩哔哩科技有限公司 | 基于产品特征的软件版本管理方法、装置、系统及介质 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101572622A (zh) * | 2009-03-02 | 2009-11-04 | 南京联创科技股份有限公司 | 动态扩充资源元数据的实现方法 |
CN101697123A (zh) * | 2009-10-20 | 2010-04-21 | 金蝶软件(中国)有限公司 | 一种erp系统中界面布局修改方法、装置及erp系统 |
-
2011
- 2011-02-25 CN CN 201110046865 patent/CN102103513B/zh not_active Expired - Fee Related
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101572622A (zh) * | 2009-03-02 | 2009-11-04 | 南京联创科技股份有限公司 | 动态扩充资源元数据的实现方法 |
CN101697123A (zh) * | 2009-10-20 | 2010-04-21 | 金蝶软件(中国)有限公司 | 一种erp系统中界面布局修改方法、装置及erp系统 |
Non-Patent Citations (1)
Title |
---|
廖尔崇,徐晓飞,刘旭东,战德臣: "扩展的角色访问控制模型及其应用", 《计算机工程与设计》 * |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103294477A (zh) * | 2013-06-14 | 2013-09-11 | 张昀 | 使用Office文档进行移动开发项目管理的方法 |
CN103294477B (zh) * | 2013-06-14 | 2018-02-13 | 北京新学堂网络科技有限公司 | 使用Office文档进行移动开发项目管理的方法 |
CN104391725A (zh) * | 2014-12-08 | 2015-03-04 | 畅捷通信息技术股份有限公司 | 页面展示方法和页面展示装置 |
CN104391725B (zh) * | 2014-12-08 | 2017-11-14 | 畅捷通信息技术股份有限公司 | 页面展示方法和页面展示装置 |
CN106325832A (zh) * | 2015-06-18 | 2017-01-11 | 阿里巴巴集团控股有限公司 | 数据生成的方法和装置 |
CN105631266A (zh) * | 2015-12-28 | 2016-06-01 | 上海赞越软件服务中心 | 通过jQuery壳的多用户切换机制 |
CN108804134A (zh) * | 2018-06-20 | 2018-11-13 | 上海哔哩哔哩科技有限公司 | 基于产品特征的软件版本管理方法、装置、系统及介质 |
Also Published As
Publication number | Publication date |
---|---|
CN102103513B (zh) | 2013-09-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108647330B (zh) | 一种基于bim模型文件的3d轻量化转换方法 | |
CN102567675B (zh) | 一种业务系统下的用户权限管理方法和系统 | |
CN103019684B (zh) | 一种基于动态模板的配置业务页面的方法 | |
CN102103513B (zh) | 一种使用元数据和中间件快速开发软件的方法 | |
CN104375818A (zh) | 一种通过配置文件实现通用数据格式录入的系统及方法 | |
KR101368068B1 (ko) | 데이터베이스 구축 방법, 이를 실행하는 데이터베이스 구축 서버 및 이를 저장한 기록 매체 | |
CN104133772A (zh) | 一种自动生成测试数据的方法 | |
CN103383645A (zh) | 代码生成方法及系统 | |
CN105046146A (zh) | 一种安卓系统的资源访问方法 | |
CN103778107A (zh) | 一种基于excel快速动态生成表单的方法与平台 | |
CN103853803A (zh) | 数据库的配置文件的封装方法和操作方法及其操作装置 | |
CN104793961A (zh) | 使用原生Web代码的快速JavaWeb开发方法及系统 | |
CN104112013A (zh) | HBase二级索引方法及装置 | |
CN103995698A (zh) | 一种面向业务的应用表单敏捷开发方法及系统 | |
CN102436473A (zh) | 菜单管理装置和菜单管理方法 | |
CN102298739A (zh) | 一种变更物料清单的方法及装置 | |
CN106649457A (zh) | 基于对象关系映射技术的数据处理框架 | |
CN104834860A (zh) | 一种安全事件动态入库方法 | |
CN103036855A (zh) | 一种权限管理的实现设备和方法 | |
CN102073702A (zh) | 一种人力资源管理信息系统的人员信息动态扩展的实现方法 | |
CN104573053B (zh) | 一种基于xml的配置项模板动态定制方法 | |
CN102609494B (zh) | 台帐数据的处理方法及装置 | |
CN103500099A (zh) | 一种通过扩展点和扩展实现软件快速二次开发的方法 | |
CN107168700A (zh) | 基于sql‑select驱动的全自动表单web后台管理系统的基础开发框架 | |
CN102314495A (zh) | 一种数据库对象的维护方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20130925 Termination date: 20170225 |