CN100410875C - 一种基于实体的软件框架系统及运行方法 - Google Patents
一种基于实体的软件框架系统及运行方法 Download PDFInfo
- Publication number
- CN100410875C CN100410875C CNB2006100627028A CN200610062702A CN100410875C CN 100410875 C CN100410875 C CN 100410875C CN B2006100627028 A CNB2006100627028 A CN B2006100627028A CN 200610062702 A CN200610062702 A CN 200610062702A CN 100410875 C CN100410875 C CN 100410875C
- Authority
- CN
- China
- Prior art keywords
- entity
- request
- information
- module
- service logic
- 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.)
- Expired - Fee Related
Links
Images
Abstract
本发明公开一种基于实体的软件框架系统及运行方法,系统启动后,控制器调用配置文件加载实体信息;用户通过通用视图模块发出请求,所述控制器将所述请求转发给通用业务逻辑执行模块,所述通用业务逻辑执行模块根据实体信息和用户请求中信息执行业务逻辑,向所述控制器返回执行结果;所述通用视图模块显示所述执行结果。采用本发明方法,可实现基于本软件框架的快速二次开发。
Description
技术领域
本发明涉及软件技术领域,尤其涉及基于实体的软件框架系统及运行方法。
背景技术
随着J2EE技术的发展,对各种基于Java技术的软件框架的研究和应用也上了一个新的台阶,许多优秀的软件框架,如struts、hibernate等正广泛应用于不同行业、不同规模的软件开发中。
目前比较流行的几种软件框架都是面向开发者提出的,即仍需要软件框架的使用者具备一定的软件开发能力,同时对J2EE各种技术也要有一定的了解,从而限制了框架的应用层面,也不利于进一步提高开发效率、降低成本。
目前应用最广的软件框架是APACHE软件基金会的开源项目struts(http://struts.apache.org/)。该框架基于MVC(Model,View,Controller,模型、视图、控制器)模式,采用前端控制器处理客户端交互、业务逻辑模块执行,并提供了一系列JSP(Java Server Pages,Java服务器页面)标签以简化开发人员的工作。struts的系统架构如图1如示,前端控制器是struts的核心模块,它主要负责下列工作:
1.在启动时加载配置文件、资源文件,
2.截获JSP页面的请求,根据配置文件的定义,将请求转发给指定的业务逻辑执行模块进行处理,
3.业务逻辑处理完毕后,根据配置文件的定义,定向到指定的视图(JSP页面)。
图中以虚线框包含的部分一业务逻辑执行模块、JSP页面是开发者需要自行开发的。为了简化用户的开发,Struts提供了一系列机制,包括提供页面标签,封装常用的功能以满足用户的页面校验、国际化等需求。
图2为一个简单的struts调用过程,对其中各对象的说明如下:
JSP:指jsp页面,起用户视图的作用;
ActionForm:相当于一个封装业务数据的容器,使数据能在JSP和业务逻辑执行模块中传递,并提供一些基于ActionForm的校验机制。每个ActionForm包括若干域,每一个域就是一项业务数据。ActionForm可以由开发者定制,在代码中指定各个域;也可以用struts提供的通用模板,在配置文件中描述其中的域;
控制器:负责控制功能的一组组件,负责系统初始化时配置文件的读取、系统运行时转发请求给业务逻辑执行模块、选择合适的用户视图等;
Action:业务逻辑执行模块,每个Action负责处理一个特定的业务逻辑。
整个流程的说明如下:
1.JSP页面对ActionForm的数据进行处理,其中包括:
a)数据读取,即获取从前面JSP或者Action中处理过的ActionForm中处理过的数据并显示出来,
b)数据赋值,即通过用户输入,将ActionForm中的域赋值;
2.JSP提交请求给控制器;
3.控制器根据配置文件的定义,将请求转发到指定的Action进行处理;
4.Action接收到请求,从ActionForm中读取所需要的业务数据;
5.Action执行业务逻辑,包括查询、修改数据库或者进行运算等(Action执行完业务逻辑后,也可以向ActionForm中赋值);
6.Action将处理权还给控制器模块;
7.控制器根据配置文件的定义,选择相应的JSP展现用户视图。
Struts作为目前应用面最广、最为成熟的web框架,具有许多优点,但是如上所述,由于它是面向J2EE开发者提出的,其中的JSP、Action部分,有些时候包括ActionForm部分都需要开发者编写程序实现,因此需要框架使用者熟悉J2EE技术。即对于熟练的java开发者来说,使用struts来构建自己的系统能带来很大的方便,而对于那些不熟悉java的开发者来说则显得相当困难。
从系统功能的方面来看,struts虽然是一个功能强大的框架,但是也有相当大的部分没有涉及,最主要的是不能自动生成用户视图和完成数据持久化。而J2EE开发中,这两部分是相当繁琐的,即使使用者已经掌握J2EE技术,仍然需要花费大量的时间进行编码和调试。这使得项目的开发成本不能进一步降低。
发明内容
本发明提供一种基于实体的软件框架系统及运行方法,使系统管理人员能迅速搭建起一个大型应用系统。
本发明一实施例提供一种基于实体的软件框架系统运行方法,包括步骤:
系统启动后,控制器调用配置文件加载实体信息;用户通过通用视图模块发出请求,所述控制器将所述请求转发给通用业务逻辑执行模块,所述通用业务逻辑执行模块根据实体信息和用户请求中的信息执行业务逻辑,向所述控制器返回执行结果;所述通用视图模块显示所述执行结果。
可选地,用户通过通用视图模块发出请求进一步包括步骤:用户进入通用页面上发出请求,通用视图模块向控制器发送请求,所述控制器查询实体信息后,通用视图模块根据查询到的所述实体信息,生成视图界面,所述用户通过所述视图界面发送进一步的请求,所述请求包括数据信息。
可选地,所述通用业务逻辑执行模块根据实体信息和用户请求中信息执行业务逻辑进一步包括步骤:所述通用业务逻辑执行模块向所述控制器请求实体信息,控制器读取实体信息并返回给通用业务逻辑执行模块,通用业务逻辑执行模块根据实体信息和请求中信息执行业务逻辑。
可选地,需增加新的视图或业务逻辑时,在所述配置文件中注册新增包含视图的实体信息或定制业务逻辑执行模块,重新加载所述配置文件。
本发明一实施例提供一种基于实体的软件框架系统,包括:通用视图模块,用于接收用户请求,并根据实体信息生成用户视图界面;通用业务逻辑执行模块,用于接收控制器转发来的请求,根据实体信息和用户请求中的信息执行业务逻辑,并返回控制器执行结果;控制器,用于转发请求给通用业务逻辑执行模块,接收来自通用视图模块的请求,并向通用视图模块发送实体信息、视图信息或执行结果。
优选地,所述控制器还包含配置文件读取模块,用于被控制器调用,以加载配置文件中的实体信息。
优选地,所述系统还包括定制逻辑执行模块,所述定制逻辑执行模块在配置文件中注册,被控制器调用。
本发明方案的有益效果如下:
本发明提出的软件框架基于实体实现,无需二次开发者编码、修改通用视图模块,控制器和通用业务逻辑执行模块,利用配置的方式即可生成用户视图,完成数据持久化,是完全面向系统管理人员提出的。开发人员、DBA、系统维护员、配置管理员、甚至是从未写过一行程序的人都能使用此框架迅速建立起自己的应用系统。且此框架能与企业已有应用系统整合,能溶入整个EIS中。
1.能在短时间内迅速搭建大型应用,大幅降低了软件项目的开发成本
根据在实际项目中的实践对比,运用本系统搭建J2EE应用,将使开发成本降到原来的1/20到1/30。以我司S项目为例,对比2个规模相似的子系统的J2EE部分,其中一个是按照传统方式,以Struts为架构进行开发,6名开发人员共花费15个人月完成,而另一子系统采用本系统架构,仅分配一人对配置文件进行修改,在2周内完成。
2.提高软件质量,增加客户满意度
由于应用本架构可做到不编写代码或者只编写极少量代码,因此减少了开发过程中编码产生的错误,提高了软件质量。
附图说明
图1为现有技术struts的系统结构框图;
图2为现有技术struts的调用流程图;
图3为本发明一实施例的系统结构框图;
图4为本发明一实施例的系统运行流程图;
图5为本发明另一实施例的查询执行流程图;
图6为图5所示流程查询结果示意图。
具体实施方式
以下将结合附图对本发明实施例进行说明。本发明一个实施例的系统结构框图如图3所示,其中实线部分为系统的通用部分,虚线部分为系统拓展功能,图中各模块功能描述如下:
通用视图模块:包括JSP页面、封装视图功能的java bean和一些页面标签。通用视图无须二次开发者编写程序实现,通过实体信息描述就能自动生成,二次开发者可以通过配置指定展现方式,如列表方式、树状图方式等。二次开发者的定义是:将本系统作为一个平台架构,在其上通过配置或者编码实现自己的特定需求的程序员。
控制器:分为几个部分,如配置文件读取模块、实体信息管理模块、请求交互模块、EJB(Enterprise JavaBeans)调用模块等。控制器在二次开发时,无需二次开发者修改。
配置文件读取模块:被控制器调用,专门对配置文件、资源文件进行读取、解析的模块。
通用业务逻辑执行模块:具有自动数据持久化能力的业务执行模块,能根据实体信息自动执行运算和数据库操作。控制器负责接受用户的请求,然后转发到通用业务逻辑执行模块,通用业务逻辑执行模块负责执行这些转发来的请求。本系统的持久化是通过将数据保存到数据库实现的。
定制逻辑执行模块和定制页面是二次开发者后期根据需要自行开发的执行模块和视图,在配置文件中注册后,被控制器调用。
本系统是基于实体实现的,实体信息是使用者在配置文件中指定的,包括实体基本信息和实体关系两方面:
实体基本信息:包括实体对应的数据库中的表(可以是多张表),实体包含的字段及实体的读取,存储属性相关信息。
实体关系:指实体之间相互关联的关系,包括一对一,一对多及多对多等关系,同时需要指定实体之间关联的列。
本系统的功能主要包括:1.用户视图自动生成;2.用户请求自动处理;3.数据自动持久化保存。
实施例一:结合图4,以系统初始化和一个简单的调用为例来说明本系统的运行。
1.系统启动时,控制器调用配置文件读取模块加载已定义好的实体信息。配置文件是以.xml文件形式保存在硬盘上的。加载实体信息时,将依次加载实体基本信息和实体关系信息;需增加新的视图或业务逻辑时,在所述配置文件中注册新增实体信息或业务执行逻辑,重新加载所述配置文件。在系统运行时,如果配置文件被维护人员修改过,可以通过界面手动触发重新加载;
控制器还可以解析、读取EJB,数据库连接等配置信息,一般在系统初始化时读取配置文件,然后提供接口给其他模块,其他模块调用这些接口就可以获得配置文件中的信息。
控制器可能需要加载资源文件。视图界面上的文本都是在资源文件中定义的,通过资源文件,能方便、迅速地支持国际化的需求。
2.当用户点击某一个链接进入通用页面时,通用视图模块向控制器发送请求,查询该链接对应的实体,通用页面为通用视图模块的一个缺省选择页面;
3.控制器在配置文件中查询实体信息,并将查询到的实体信息返回给通用视图模块;
4.通用视图模块根据实体信息生成视图界面,系统通过解析实体对应的表,表结构,字段类型等属性,决定实体的展现方式,然后来生成对应的视图的。如果有些界面不需要视图,可以略过该步骤,直接进入处理步骤6;
5.用户在视图界面进行操作,可进一步提交包含业务数据信息的请求,通用视图模块提交请求给控制器;
6、控制器解析请求,判断用户的操作类型,将请求转发给通用业务逻辑执行模块;
7、通用业务逻辑执行模块向控制器请求实体信息;
8、控制器读取实体信息,并把实体信息返回给通用业务逻辑执行模块;
9、通用业务逻辑执行模块根据返回的实体信息和请求中的数据信息,进行操作,包括运算及数据库操作;
10、操作执行完成后,通用业务执行模块将执行结果和处理控制权交给控制器;
11、控制器根据实体信息选择合适的视图,并将执行结果数据传递给通用视图模块;通用视图模块按照默认方式显示,或查询实体信息中显示信息,根据所述显示信息显示。
实施例二:下面以电信计费系统中资费配置为例,对本系统的配置和运行进行详细说明。
假设在计费系统中,有套餐-资费-费率3种实体。其中,费率是最底层的实体,用来表示使用价格,如:0.6元/分钟,1元/K等。资费将费率进行封装,然后指定通话场景,如:晚上10点到早上6点时段,使用0.3元/分钟的费率等。套餐是由一系列资费组成的,直接提供给用户订购,以方便运营商推销或捆绑销售,如:GPRS数据业务套餐包括若干数据业务的资费,资费1,资费2,...,资费n,每一资费又分为不同费率。
基于这种实体结构,可以进行如下设置:
1.配置实体基本信息
实体基本信息包括:实体对应的表,实体的列以及一系列相关属性
如,套餐表对应的表名为:t_tariff_plan,其中有3个列,分别是
tariff_plan_id(套餐ID)
tariff_plan_name(套餐名称)
status(套餐状态,0代表未生效,1代表已生效)。
则可在实体配置文件中做如下定义
<entity id=″tariff_plan″text=″entity.tariff_plan″>
<tableset id=″t_tariff_plan″table=″t_tariff_plan″>
<meta-data id=″tariffPlanID″isdisplay=″false″type=″int″
column=″tariff_plan_id″text=″tariff_plan.id″pk=″true″query=″true″
notNull=″ture″autoIncrement=″true″length=″8″/>
<meta-data id=″tariffPlanName″type=″string″
column=″tariff_plan_name″text=″tariff_plan.name″query=″true″notNull=″true″
length=″30″/>
<meta-data id=″status″type=″string″default=″0″column=″status″
text=″tariff_plan.status″query=″true″isBasic=″false″length=″1″>
<reference type=″enum″>
<value data=″0″disp=″tariff_plan.status.n″/>
<value data=″1″disp=″tariff_plan.status.y″/>
</reference>
</meta-data>
</tableset>
</entity>
下面对该段配置文件进行说明:
<entity id=″tariff_plan″text=″entity.tariff_plan″>是对实体的说明,其中的id是唯一索引,在同一份实体配置文件中(本系统可以支持安装模块划分成多个实体配置文件)不能重复。
Text属性为实体的显示值,这是借鉴struts的国际化机制实现的。当配置了text=″entity.tariff_plan″属性后,系统能够读取资源文件中的entity.tariff_plan对应的值(如:套餐),并且做为实体的标题显示在界面上。
<tableset id=″t_tariff_plan″table=″t_tariff_plan″>表示实体对应的表。其中,id表示表的唯一索引,在同一实体中(本系统可支持一个实体对应多个表)不能重复。Table表示数据库中的表名称。
<meta-data>用于描述实体的字段,其中<meta-data id=″tariffPlanID″isdisplay=″false″type=″int″column=″tariff_plan_id″text=″tariff_plan.id″pk=″true″query=″true″notNull=″ture″autoIncrement=″true″length=″8″/>用于描述字段tariff_plan_id(套餐ID)。
i.id表示字段的唯一索引,id在同一个表中不能重复
ii.isDisplay表示是否显示在查询结果里,isDisplay为false的时候,该字段将隐藏(该功能主要用于一些不希望用户看到或不希望用户编辑的字段)
iii.type表示字段的数据类型,这里为整数。在新增和编辑的界面上将自动根据字段数据类型进行校验。
iv.column表示字段对应的数据库表中的列名
v.pk表示字段是否是主键
vi.query表示字段是否需要作为查询条件,当query为true的时候,在通用查询界面中将把该字段作为查询条件显示在界面上。
vii.notNull表示字段是否可为空,当notNull不为空的时候,在新增和编辑的界面上将进行空值校验。
viii.autoIncrement表示字段是否自增长,如果autoIncrement=″true″则系统会自动为该字段赋自增长值
ix.length表示字段长度
<reference>用于引用字段,在新增或编辑界面上用下拉框表示其枚举值。
同样的,还可以配置出资费(tariff)、费率实体(rate)的实体信息。
2.配置实体关系信息
实体关系属性主要描述实体之间的关联规则,如套餐实体和资费实体是一对多的关系,通过资费实体的外键tariff_plan_id进行关联,则可以在实体配置文件中指定关系如下:
<rel id=″tariff-tariff_plan″entity=″tariff″parent=″tariff_plan″>
<condition condi=″tariffPlanID=?″>
<parameters>
<parameter useColumn=″tariffPlanID″/>
</parameters>
</condition>
</rel>
下面对该段配置文件进行详细描述:
<rel id=″tariff-tariff_plan″entity=″tariff″parent=″tariff_plan″>是对实体关系的说明,其中id是关系的索引,在同一份实体配置文件中不能重复,entity是实体id,parent是父实体id,entity=″tariff″parent=″tariff_plan″合起来表示这是描述资费(tariff)和套餐(tariff_plan)的关系。
<condition condi=″tariffPlanID=?″>是本系统中一种描述实体间关系的配置语句,这种方式一般用来描述一对多的关系(还可以用其他方式描述一对一和多对多的关系)。其中condi属性是表示子实体和父实体进行关联的规则。
<parameter>属性一般就是子实体的外键。
同样的,还可以配置出资费-费率的关系。
当实体信息和实体关系信息配置完成后,系统能够从实体配置文件中知道实体的两部分属性:显示层属性和持久层属性。显示属性是实体在界面上的展现方式,而持久层属性则是数据读取、存储相关的属性。
以查询为例,图5表示的是资费设置部分通用查询的调用和执行顺序:
1.用户在通用页面上发送查询请求,如查询套餐id为001的套餐及其下的资费和费率;
2.控制器将查询请求转发到通用查询模块,通用查询模块是通用业务逻辑执行模块的一个子模块;
3.通用查询模块从配置文件中获取实体信息,确定要查询哪些表的哪些字段,并确定实体之间的关联条件;
4.通用查询模块通过实体信息构造出查询语句并进行查询处理;
先查询套餐实体信息:select tariff_Plan_ID,tariff_Plan_name,status fromt_tariff_plan where tariff_plan_id=‘001’
对于所有查询出来的套餐(当然,在这个例子中只可能有一条记录),按照指定的套餐-资费的关系进行资费查询:select tariff_id,tariff_name,rule,startTime,endTime from t_tariff where tariff_plan_id=‘001’
对于所有查询出来的资费,按照指定的资费-费率的关系进行费率查询。
5.当所有的实体的查询出来后,将查询结果和控制权返回给控制器。
6.控制器选择相应的视图进行显示,这里按照默认的树状图来显示(也可以指定其他显示形式)。
7.通用视图模块读取实体信息中与视图相关的显示信息,确定要显示哪些字段及其显示方式,根据获取的信息把查询结果显示在页面上。
图6就是在通用界面上以树状图方式显示的查询结果。
如上所述,正是这种基于实体的机制,有效保障了视图和执行部分的自动生成,从而使二次开发者摆脱了程序编写。在本系统中,正常情况下,二次开发者只需要对实体配置文件、资源文件进行编辑,避免了编码和调试。
随着通用化程度的提高,新的问题随之产生,即需求的多样性带来的问题。由于WEB界面展现方式、处理逻辑的多样性,简单的统一视图无法满足各类不同的需求。基于这个问题,以两种方式来解决:
1.在框架中加入多种处理逻辑,以满足绝大部分的需求
本系统框架中封装了多种常用的功能逻辑,能满足绝大多数情况下的需求。如,对于一些比较孤立的实体,提供了列表方式进行展现,而对于一些彼此之间关系比较复杂的实体,提供树形结构进行展示,并提供一系列强大的功能方便操作,如拷贝、粘贴、克隆、相似创建等。
2.提供可编程接口进行拓展
当出现一些比较生僻、异常的需求,而框架不能支持的,可以自行开发该功能的视图或者定制逻辑执行模块,并在配置文件中注册这些模块,供控制器调用,就能将自己的功能加入框架了。通用模块不用修改,在二次开发时,只需要编写一个类,继承可编程接口,然后将这个类在配置文件中指明即可。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。
Claims (10)
1. 一种基于实体的软件框架系统运行方法,其特征在于,包括步骤:
系统启动后,控制器调用配置文件加载实体信息;
用户通过通用视图模块发出请求,所述控制器将所述请求转发给通用业务逻辑执行模块,所述通用业务逻辑执行模块根据实体信息和用户请求中的信息执行业务逻辑,向所述控制器返回执行结果;
所述通用视图模块显示所述执行结果。
2. 如权利要求1所述的方法,其特征在于,所述实体信息包括实体基本信息和实体关系,所述实体基本信息包括实体对应的表、实体包含的字段、实体的读取、存储属性。
3. 如权利要求1所述的方法,其特征在于,用户通过通用视图模块发出请求进一步包括步骤:
用户进入通用页面上发出请求,通用视图模块向控制器发送请求,所述控制器查询实体信息后,通用视图模块根据查询到的所述实体信息,生成视图界面,用户通过所述视图界面发送进一步的请求,所述请求包括数据信息。
4. 如权利要求1或3所述的方法,其特征在于,所述通用业务逻辑执行模块根据实体信息和用户请求中的信息执行业务逻辑进一步包括步骤:
所述通用业务逻辑执行模块向所述控制器请求实体信息,控制器读取实体信息并返回给通用业务逻辑执行模块,通用业务逻辑执行模块根据实体信息和请求中的信息执行业务逻辑。
5. 如权利要求1或2所述的方法,其特征在于,所述通用视图模块显示所述执行结果是控制器根据实体信息选择视图,通用视图模块按照默认方式显示,或查询实体信息中显示信息,根据所述显示信息显示。
6. 如权利要求1所述的方法,其特征在于,进一步包括步骤:需增加新的视图或业务逻辑时,在所述配置文件中注册新增包含视图的实体信息或定制业务逻辑执行模块,重新加载所述配置文件。
7. 一种基于实体的软件框架系统,其特征在于包括:
通用视图模块,用于接收用户请求,并根据实体信息生成用户视图界面;
通用业务逻辑执行模块,用于接收控制器转发来的用户请求,根据实体信息和用户请求中的信息执行业务逻辑,并返回控制器执行结果;
控制器,用于转发请求给通用业务逻辑执行模块,接收来自通用视图模块的请求,并向通用视图模块发送实体信息、视图信息或执行结果。
8. 如权利要求7所述的系统,其特征在于,所述控制器还包含配置文件读取模块,用于被控制器调用,以加载配置文件中的实体信息。
9. 如权利要求7所述的系统,其特征在于,所述通用视图模块包括JSP页面、封装视图功能的java bean和页面标签。
10. 如权利要求8所述的系统,其特征在于,所述系统还包括定制逻辑执行模块,所述定制逻辑执行模块在配置文件中注册,被控制器调用。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNB2006100627028A CN100410875C (zh) | 2006-09-21 | 2006-09-21 | 一种基于实体的软件框架系统及运行方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNB2006100627028A CN100410875C (zh) | 2006-09-21 | 2006-09-21 | 一种基于实体的软件框架系统及运行方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1924801A CN1924801A (zh) | 2007-03-07 |
CN100410875C true CN100410875C (zh) | 2008-08-13 |
Family
ID=37817457
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNB2006100627028A Expired - Fee Related CN100410875C (zh) | 2006-09-21 | 2006-09-21 | 一种基于实体的软件框架系统及运行方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN100410875C (zh) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102495730B (zh) * | 2011-12-02 | 2014-07-02 | 曙光信息产业(北京)有限公司 | 一种动态可扩展的web界面的方法 |
CN103324470B (zh) * | 2012-03-21 | 2017-09-22 | 阿里巴巴集团控股有限公司 | 一种Web系统生成的方法和装置 |
CN104111826B (zh) * | 2013-04-19 | 2017-07-04 | 杭州新世纪电子科技有限公司 | 一种软件项目开发方法及装置 |
CN107153556A (zh) * | 2017-04-28 | 2017-09-12 | 武汉票据交易中心有限公司 | 一种应用服务器基础框架的配置方法及其系统 |
CN111666074B (zh) * | 2019-03-05 | 2024-04-09 | 华为技术有限公司 | 一种web应用定制的方法、相关装置及系统 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6643659B1 (en) * | 1999-10-26 | 2003-11-04 | Mitel Knowledge Corporation | Common data model including field interdependencies |
CN1525314A (zh) * | 2003-02-24 | 2004-09-01 | 用于生成网络内容的基础结构 | |
CN1525361A (zh) * | 2003-02-24 | 2004-09-01 | 改变web内容视图的技术 |
-
2006
- 2006-09-21 CN CNB2006100627028A patent/CN100410875C/zh not_active Expired - Fee Related
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6643659B1 (en) * | 1999-10-26 | 2003-11-04 | Mitel Knowledge Corporation | Common data model including field interdependencies |
CN1525314A (zh) * | 2003-02-24 | 2004-09-01 | 用于生成网络内容的基础结构 | |
CN1525361A (zh) * | 2003-02-24 | 2004-09-01 | 改变web内容视图的技术 |
Non-Patent Citations (4)
Title |
---|
基于MVC模式的Web OA系统设计与研究. 易可可,陈志刚.计算机工程与应用,第2005卷第4期. 2005 |
基于MVC模式的Web OA系统设计与研究. 易可可,陈志刚.计算机工程与应用,第2005卷第4期. 2005 * |
精通Struts:基于MVC的Java Web设计与开发. 孙卫琴,129-136,电子工业出版社. 2004 |
精通Struts:基于MVC的Java Web设计与开发. 孙卫琴,129-136,电子工业出版社. 2004 * |
Also Published As
Publication number | Publication date |
---|---|
CN1924801A (zh) | 2007-03-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
AU765176B2 (en) | System and method for the visual customization of business object interfaces | |
CN102375731B (zh) | 一种免编码集成应用软件平台系统 | |
US6275977B1 (en) | Application cooperation method and apparatus | |
US5432925A (en) | System for providing a uniform external interface for an object oriented computing system | |
US7370335B1 (en) | System and method for providing a public application program interface | |
US20040064805A1 (en) | Enterprise scoped software factory | |
US20040187140A1 (en) | Application framework | |
CN112668295B (zh) | 一种基于自定义表单和Activiti工作流的管理系统及方法 | |
US20020089542A1 (en) | Computer program product, recording medium having screen component interface program code recorded therein, and screen program creating method | |
CN101388904B (zh) | Gis服务聚合方法、装置及系统 | |
EP0756725B1 (en) | Interface device and method | |
CN106445536B (zh) | 自动化业务设计管理系统 | |
CN102467701A (zh) | 分布式订单编排系统中的基于事件的编排 | |
CN111784108B (zh) | 一种主数据管理平台的建模方法和装置 | |
CN103425778A (zh) | 一种数据库应用系统的智能化开发平台 | |
CN100410875C (zh) | 一种基于实体的软件框架系统及运行方法 | |
CN112418784B (zh) | 一种服务的编排执行系统及方法 | |
CN110764752A (zh) | 基于微服务架构实现Restful服务图形化服务编排的系统及其方法 | |
He et al. | ISA-95 tool for enterprise modeling | |
CN115480810A (zh) | 一种基于云原生的低代码平台 | |
CN109542425B (zh) | 一种零售供应链的自动化应用方法和系统 | |
CN113537943A (zh) | 一种通用工作流引擎及其构建方法 | |
JP2001325098A (ja) | アプリケーションプログラムの作成方法、データベース操作方法、項目オブジェクト管理方法、モジュール動作制御方法ならびにデータベース操作方法、項目オブジェクト管理方法およびモジュール動作制御方法を実現するためのプログラムを記録したコンピュータ可読な記録媒体 | |
US20060080277A1 (en) | Method and system for designing, implementing and documenting OLAP | |
JPH11282658A (ja) | 対話的ソフトウエア構築・駆動装置 |
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 | ||
C17 | Cessation of patent right | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20080813 Termination date: 20120921 |