CN101115180B - 一种电子节目菜单系统及其功能模块动态加载运行方法 - Google Patents
一种电子节目菜单系统及其功能模块动态加载运行方法 Download PDFInfo
- Publication number
- CN101115180B CN101115180B CN2007101459490A CN200710145949A CN101115180B CN 101115180 B CN101115180 B CN 101115180B CN 2007101459490 A CN2007101459490 A CN 2007101459490A CN 200710145949 A CN200710145949 A CN 200710145949A CN 101115180 B CN101115180 B CN 101115180B
- Authority
- CN
- China
- Prior art keywords
- module
- unit
- functional module
- functional
- newly added
- 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
- 238000011017 operating method Methods 0.000 title abstract description 3
- 238000011068 loading method Methods 0.000 claims abstract description 90
- 238000012545 processing Methods 0.000 claims abstract description 42
- 230000006870 function Effects 0.000 claims description 78
- 238000012986 modification Methods 0.000 claims description 29
- 230000004048 modification Effects 0.000 claims description 29
- 238000000034 method Methods 0.000 claims description 25
- 230000008569 process Effects 0.000 claims description 4
- 230000004044 response Effects 0.000 description 9
- 238000011161 development Methods 0.000 description 5
- 238000010586 diagram Methods 0.000 description 2
- 230000007717 exclusion Effects 0.000 description 2
- 230000008859 change Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 235000014510 cooky Nutrition 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 235000021185 dessert Nutrition 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 239000000284 extract Substances 0.000 description 1
- 230000009191 jumping Effects 0.000 description 1
- 230000000630 rising effect Effects 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
Images
Landscapes
- Stored Programmes (AREA)
Abstract
一种EPG系统及其功能模块动态加载运行方法,该系统包含请求接收单元,EPG处理单元,前置单元,模块加载单元;模块加载单元用于根据新增功能模块的可执行文件名加载功能模块,并保存相应的功能模块实例标识;前置单元用于在接收到请求接收单元发送的用户请求后,使用功能模块实例标识,将用户请求作为调用参数,依次调用模块加载单元加载的可被调用的功能模块;各功能模块调用完毕后,将经过各功能模块处理的用户请求发送至EPG处理单元进行EPG系统处理。本发明通过模块加载单元动态加载功能模块,并通过前置单元依序对各功能模块进行调用,实现了EPG系统的功能模块动态加载功能,减少了系统资源的占用,增加了EPG系统的灵活性。
Description
技术领域
本发明涉及一种EPG(Electronic Program Guide,电子节目菜单)系统及其功能模块动态加载运行方法。
背景技术
IPTV(Internet Protocol Television,互联网电视)作为跨电信行业与广电行业的新的应用,有着相当广阔的市场前景。一方面,目前的电信行业随着人们需求的发展,已经快速进入宽带时代,宽带已经逐步开始融入社会生活的各个层面,而IPTV就是在现有电信宽带网络上将视频媒体融合到电信业务中最佳的技术。尽管目前IPTV的实际用户数量值还不是十分大,但是用户数在不断地增加,总体的发展趋势也处于稳定上升的状态中。另一方面,IPTV已经不局限于只提供直播,点播这些基本的功能,还包含卡拉OK、全球眼等增值业务。
EPG(Electronic Program Guide,电子节目菜单)系统在IPTV中起着十分重要的作用,是观众进入IPTV的门户。IPTV所提供的各种业务的索引及导航都是通过EPG系统来完成的。EPG系统的界面与Web(WorldWide Web,万维网)页面类似,一般都提供各类菜单、按钮、链接等可供用户选择节目时直接点击的组件;EPG系统的界面上也可以包含各类供用户浏览的动态或静态的多媒体内容。
综上所述,EPG系统必须为用户提供高质量的用户体验服务,既要快速响应,又要操作简便,还需要系统长时间稳定运行;此外,随着IPTV功能的不断丰富、用户数量的快速增加,使得EPG系统的功能也越来越复杂,EPG系统面临的压力也逐渐增大。
基于上述特点,目前的EPG系统普遍存在如下问题:
(1)随着用户数的增长和IPTV内容的大量增加,EPG系统需要为用户提供24小时不间断的服务,因此需要将包括日志、用户跟踪、性能分析等与EPG功能无直接关系的附加功能模块的同时加载运行,其中有很多功能模块仅在特殊情况下才被调用,却长期占用大量的内存空间和处理资源,降低了系统的性能;
(2)在需要增加新的功能模块,或系统中的某个功能模块需要进行升级时,必须停止整个EPG系统的运行,影响了用户的正常使用。
发明内容
本发明所要解决的技术问题是,克服现有技术中EPG系统的不足,提出一种可动态加载运行功能模块的EPG系统及相应的功能模块的动态加载运行方法。
为了解决上述问题,本发明提供一种电子节目菜单系统,包含请求接收单元和电子节目菜单处理单元,其特征在于,该系统还包含:前置单元,模块加载单元;其中,
模块加载单元用于根据新增功能模块的可执行文件名加载功能模块,并保存相应的功能模块实例标识;
前置单元用于在接收到请求接收单元发送的用户请求后,使用功能模块实例标识,将用户请求作为调用参数,依次调用模块加载单元加载的可被调用的功能模块;各功能模块调用完毕后,将经过各功能模块处理的用户请求发送至电子节目菜单处理单元进行电子节目菜单系统处理。
此外,该系统还包含:配置管理单元,运行参数存储单元;其中,
配置管理单元用于提供添加新增功能模块的可执行文件名及其相应的运行参数的用户界面,将添加的新增功能模块的可执行文件名及其相应的运行参数发送至所述模块加载单元;
所述模块加载单元根据配置管理单元发送的新增功能模块的可执行文件名加载功能模块,并将相应的功能模块实例标识及运行参数保存在运行参数存储单元中;
所述运行参数包含:运行序号,用于标识功能模块的调用顺序。
此外,所述配置管理单元还用于修改保存在所述运行参数存储单元中的,当前已加载的各功能模块的运行参数;所述运行参数还包含:运行状态,用于标识当前已加载的功能模块是否可以被调用。
此外,所述电子节目菜单系统及各功能模块采用JAVA语言开发;所述模块加载单元采用如下方法加载功能模块:根据功能模块的可执行文件名获得相应的功能模块的类名;根据类名加载可执行文件中的类代码;生成该类的实例,获得相应的类实例标识;所述类实例标识即功能模块实例标识;可执行文件名中包含功能模块的类名。
此外,所述运行参数存储单元中还存储:新增模块标识,用于标识是否有新的功能模块被加载;和运行参数修改标识,用于标识已加载的功能模块的运行参数是否被修改;所述模块加载单元将新增的功能模块实例标识及运行参数保存在运行参数存储单元时将新增模块标识设置为已新增;所述配置管理单元修改已加载的功能模块的运行参数时将运行参数修改标识设置为已修改;所述前置单元在接收到用户请求后对新增模块标识和运行参数修改标识进行判断:若新增模块标识为已新增或运行参数修改标识为已修改,则使用更新的可被调用的功能模块组合和顺序进行所述功能模块的调用,并将新增模块标识设置为未新增,将运行参数修改标识设置为未修改。
本发明还提供一种电子节目菜单系统的功能模块动态加载运行方法,其特征在于,该方法包含如下步骤:
A:电子节目菜单系统的前置单元接收用户请求;
B:所述前置单元使用功能模块实例标识,将该用户请求作为调用参数,依次调用电子节目菜单系统的模块加载单元加载的可被调用的功能模块;
C:所述前置单元将经过各功能模块处理的用户请求发送至电子节目菜单系统的电子节目菜单处理单元进行电子节目菜单系统处理。
此外,所述模块加载单元采用如下步骤加载功能模块:
A1:接收电子节目菜单系统的配置管理单元发送的新增功能模块的可执行文件名及其相应的运行参数;
A2:根据可执行文件名加载功能模块,生成功能模块实例;
A3:保存功能模块实例标识及相应的运行参数;
所述运行参数包含:运行序号,用于标识功能模块的调用顺序。
此外,所述步骤A3后还包含如下步骤:
A4:所述配置管理单元显示已加载的功能模块的运行参数;
A5:修改功能模块的运行参数,并保存修改结果;
所述运行参数还包含:运行状态,用于标识当前已加载的功能模块是否可以被调用。
此外,所述步骤A2包含如下子步骤:
A21:根据功能模块的可执行文件名获得相应的功能模块的类名;
A22:根据上述类名加载可执行文件中的类代码;
A23:生成类的实例,获得相应的类实例标识;
所述电子节目菜单系统及各功能模块采用JAVA语言开发;所述类实例标识即功能模块实例标识;可执行文件名中包含功能模块的类名。
此外,所述步骤A3之后还包含如下步骤:将新增模块标识设置为已新增,标识有新的功能模块被加载;
所述步骤A5之后还包含如下步骤:将运行参数修改标识设置为已修改,标识已加载的功能模块的运行参数被修改;
所述步骤A和B之间还包含如下步骤:
A’:所述前置单元对新增模块标识和运行参数修改标识进行判断:若新增模块标识为已新增或运行参数修改标识为已修改,则更新功能模块列表;并将新增模块标识设置为未新增,将运行参数修改标识设置为未修改;
所述功能模块列表中包含所述模块加载单元加载的可被调用的功能模块及其运行序号;
在所述步骤B中,前置单元根据功能模块列表,按照各功能模块的运行序号依序进行所述功能模块的调用。
本发明通过配置管理单元和模块加载单元动态加载功能模块,并通过前置单元依序对各功能模块进行调用,实现了EPG系统的功能模块动态加载功能,减少了系统资源的占用,增加了EPG系统的灵活性。
附图说明
图1是本发明实施例可实现功能模块动态加载的EPG系统的系统结构示意图;
图2是本发明实施例EPG系统的功能模块动态加载方法流程图;
图3是本发明实施例EPG系统动态加载的功能模块的运行方法流程图。
具体实施方式
下面将结合附图和实施例对本发明进行详细描述。
图1是本发明实施例可实现功能模块动态加载的EPG系统的系统结构示意图。如图1所示,EPG系统包含如下模块:请求接收单元,前置单元,运行参数存储单元,模块参数存储单元,配置管理单元,模块加载单元,EPG处理单元,请求应答单元,以及各动态加载的功能模块。其中,
请求接收单元,用于接收用户请求,并将接收到的用户请求依序发送至前置单元进行处理。
配置管理单元,用于提供用户界面(UI),供系统管理员使用该UI增加需加载的新的功能模块,设置该新增功能模块的运行参数,并将该新增功能模块的可执行文件的全路径名和相应的运行参数发送至模块加载单元;修改当前已加载的功能模块的运行参数,并将相应的修改后的运行参数保存在运行参数存储单元。
上述运行参数包含:运行序号参数和运行属性参数。
运行序号参数用于标识对应功能模块的运行顺序。
运行属性参数包含:运行状态、开始方式和停止方式以及相应的时间参数。
运行状态用于标识对应功能模块当前处于正在运行状态或停止运行状态。上述正在运行状态表示该功能模块可以被调用/运行;停止运行状态表示该功能模块当前不能被调用/运行。
开始方式用于标识对应功能模块的开始方式为:手动开始,定时开始,或立即开始之一。手动开始方式表示由系统管理员将该功能模块的运行状态手动修改为正在运行状态;定时开始方式表示该功能模块加载后处于停止运行状态,在设定的时刻变为正在运行状态;立即开始方式表示该功能模块加载后即处于正在运行状态。
停止方式用于标识对应功能模块的停止方式为:定时停止,或手动停止之一。定时停止方式表示该功能模块在设定的时刻由正在运行状态变为停止运行状态;手动停止方式表示在系统管理员将该功能模块的运行状态修改为停止运行状态前,该功能模块一直处于正在运行状态。
UI中可显示当前已加载的功能模块的运行顺序的信息,系统管理员根据该信息,通过填入适当的运行序号参数设置新加载的功能模块的运行顺序,并可通过修改运行序号参数改变已加载的功能模块的运行顺序;此外,UI中还可显示当前已加载的功能模块的运行状态的信息,系统管理员根据该信息改变已加载的功能模块的运行状态,即将该功能模块设置为正在运行状态或停止运行状态。
模块加载单元,用于接收配置管理单元发送的新增功能模块的可执行文件的全路径名以及该新增功能模块的运行参数;根据该可执行文件的全路径名加载对应的功能模块及模块参数;将功能模块加载到内存中后生成的模块实例标识及相应的模块名称和运行参数依序保存在运行参数存储单元中;将模块实例标识及相应的模块参数保存在模块参数存储单元中。
上述模块实例标识通常以类名称的形式存在,类名称通常与功能模块的可执行文件的名称相同。功能模块被模块加载单元加载到内存后,生成对应的模块实例标识,前置单元通过模块实例标识调用该功能模块。
上述模块参数可采用配置文件的形式包含在上述功能模块的可执行文件中或存储在注册表中。
对于使用JAVA(爪哇)语言实现的EPG系统,上述功能模块的可执行文件的全路径名就是带有“.class”扩展名的类文件名,例如,“路径名\类名.class”。模块加载单元根据该类文件的全路径名获取路径名和类名(模块名称),并根据类名进行动态类载入(即将类代码载入内存),将该类实例化,获得该类的实例标识(模块的实例标识)。例如,使用如下代码进行类载入,并实例化:
Class cc=Class.forName(″类名″));
share oo=((share)cc).newInstance();
关于JAVA中的动态类载入的具体实现方式,请参阅相关开发文档。
上述功能模块被动态加载后,在与EPG系统(模块加载单元)相同的进程中运行。
运行参数存储单元,用于依序存储各功能模块的模块名称,模块实例标识,运行参数。可以采用以下模块动态加载表的形式存储各功能模块的模块名称,模块实例标识和运行参数。
运行序号 | 模块实例标识 | 模块名称 | 运行属性标识 | …… |
1 | 模块实例标识1 | |||
2 | 模块实例标识2 |
… | … | |||
n | 模块实例标识n |
表1:模块动态加载表
为了便于加载新的功能模块,表1中的运行序号可以不连续。例如,当前加载了n个功能模块时,运行序号可以分别是:10,20,……,10n。当有新的功能模块加入时,可以将其运行序号设置为15,使其在第一个功能模块和第二个功能模块之间运行,这样处理可以减少对该表进行排序操作的次数。不同功能模块的运行序号可以相同,表示相应的功能模块可以在不同的线程中同时被调用运行,即同步运行。若同步运行的各功能模块需要对同一变量进行修改,需要进行互斥操作。
表1中的模块名称可以是该功能模块的可执行文件(类文件)的全路径名或不包含路径的可执行文件名称(类名)。
表1中的运行属性标识用于采用特定的数据结构表示相应功能模块的运行属性参数。
例如,用1位(bit)标识运行状态:0表示停止运行状态,1表示正在运行状态;用2位(bit)标识开始方式:0表示立即开始,1表示定时开始,2表示手动开始;用1位(bit)标识停止方式:0表示手动停止,1表示定时停止。
此外,当支持功能模块的定时开始或定时停止方式时,表1中还需存储相应的定时时间参数。
运行参数存储单元中除模块动态加载表外,还可设置新增模块标识和运行参数修改标识。
新增模块标识用于标识有新的功能模块被加载,即模块动态加载表有新增内容。
运行参数修改标识用于标识某功能模块的运行参数已经被修改,例如,运行状态被修改。
模块参数存储单元,用于存储各功能模块运行所需的模块参数。模块参数由模块加载单元加载功能模块时从可执行文件中或其它配置文件中获取,并保存在模块参数存储单元中,供各功能模块读取。
前置单元,用于接收请求接收单元发送的用户请求,对于每一个用户请求,依序调用模块动态加载表中处于正在运行状态功能模块,将用户请求作为输入参数传递给各功能模块进行相应的处理;各功能模块运行/处理完毕后,根据其返回的处理结果信息将经过处理的用户请求发送至EPG处理单元。
各功能模块返回的处理结果信息可以是:继续处理和处理结束标识。继续处理表示相应的用户请求还需进行后续处理,需要前置单元调用下一功能模块或将该用户请求数据发送至EPG处理单元。处理结束是指该用户请求的处理已经完毕,无需进行后续功能模块的调用或将其发送给EPG处理单元。
EPG处理单元,用于完成EPG系统处理功能,包含:接收前置单元发送的用户请求,并根据该用户请求生成用户请求的响应数据;EPG处理单元将响应数据通过请求应答单元发送给用户。此外,EPG处理单元还可通过请求应答单元主动向用户发送节目信息、节目附加信息等其它EPG信息。
请求应答单元,用于向用户发送数据。
各功能模块用于完成特定的EPG系统附加功能,包含:日志生成,用户请求跟踪等。各功能模块可在EPG系统运行时动态加载,由前置单元依序调用。各功能模块运行时可通过模块参数存储单元获取本功能模块所需的模块参数,对用户请求数据进行分析和修改。上述用户请求数据可以由前置单元以调用参数的形式传递给各功能模块。上述调用参数可以是存储相应的用户请求数据的存储区的地址。各功能模块根据具体的功能,可调用请求应答单元向用户发送应答信息。
图2是本发明实施例EPG系统的功能模块动态加载方法流程图。如图2所示,功能模块动态加载包含如下步骤:
101:系统管理员在配置管理单元提供的UI中填写新增功能模块的可执行文件的全路径名,以及相应的运行参数,并将上述全路径名和运行参数发送至模块加载单元;
102:模块加载单元根据新增功能模块的可执行文件全路径名加载相应的功能模块,生成模块实例标识;
103:模块加载单元将该功能模块的模块实例标识和相应的功能模块运行参数依序存储在运行参数存储单元的模块动态加载表中;
各功能模块在模块动态加载表中可依照运行序号由小到大的顺序存储。
104:模块加载单元将该功能模块的模块参数存储在模块参数存储单元;
105:模块加载单元将运行参数存储单元中的新增模块标识设置为1(已新增标识),表示有新的功能模块被加载。
106:模块加载单元对每一个定时开始或定时停止的功能模块设置相应的定时器;定时器到期时相应的定时器函数对该功能模块的运行状态进行修改。
在功能模块被加载后,系统管理员可使用配置管理单元提供的UI对各功能模块的运行参数进行修改,主要包括:
(1)运行序号参数:通过该参数的修改对各功能模块的运行顺序进行调整;
(2)运行状态:将功能模块的运行状态修改为正在运行状态(手动开始),或停止运行状态(手动停止);
对功能模块的运行参数进行修改后,配置管理单元将运行参数存储单元中的运行参数修改标识修改为1(已修改标识),表示某功能模块的运行参数已被修改。
除上述系统管理员对运行参数进行手动修改外,对于定时开始或定时停止的功能模块,当对应的定时器到期时,相应的定时器函数除对功能模块的运行状态进行修改外,还需将运行参数修改标识修改为1。
当然,运行参数修改标识和新增模块标识可以使用同一变量,但是由于它们是由配置管理单元和模块加载单元分别设置,若使用同一变量进行标识需要进行互斥操作。
图3是本发明实施例EPG系统动态加载的功能模块的运行方法流程图。如图2所示,动态加载的功能模块的运行包含如下步骤:
201:请求接收单元将新接收到的用户请求发送给前置单元;
202:前置单元对运行参数存储单元中的新增模块标识和运行参数修改标识进行判断,若其中任一标识为1,则执行下一步;否则跳转至步骤204;
203:前置单元更新功能模块列表,即从模块动态加载表中依序提取运行状态为正在运行的功能模块的模块实例标识,准备使用更新的功能模块的组合和顺序进行功能模块的调用;将新增模块标识和运行参数修改标识设置为0(未新增或未修改);
前置单元将模块动态加载表中的处于正在运行状态的各功能模块的实例标识依序保存在内存的功能模块列表中,以加快调用速度;功能模块列表仅包含依序排列的处于正在运行状态的功能模块的模块实例标识及相应的运行序号;当模块动态加载表出现变化时,前置单元需要进行功能模块列表更新,即从模块动态加载表中重新依序提取处于正在运行状态的功能模块。
204:前置单元采用功能模块列表,按照运行序号由小到大的顺序通过模块实例标识调用各功能模块,调用时将用户请求数据传递给各功能模块;
对于运行序号相同的功能模块,前置单元可在不同的线程中调用不同的功能模块。
205:各功能模块从模块参数存储单元中获取相应的模块参数;对用户请求进行相应的处理,处理完毕后将处理结果信息返回给前置单元;
206:前置单元将用户请求传递给EPG处理单元。
需要注意的是,功能模块的处理结果信息可以是“处理结束”标识,表示该用户请求已处理完毕,前置单元无需发送至后续的功能模块或EPG处理单元。
以上描述了本发明实施例可动态加载功能模块的EPG系统及其相应的加载运行方法。下面将举两个功能模块的应用实例,以便更具体、直观地了解本发明。
应用实例1-拦截功能模块:
该功能模块的作用是对包含恶意或非法信息的用户请求进行拦截。
拦截功能模块被调用时,通过HttpServletRequest方法对用户请求进行分析,若该用户请求中包含恶意或非法信息,例如,该请求要求重定向到一个非法页面,则通过请求应答单元向该用户发送一个警告信息,并以“处理结束”标识作为处理结果信息返回给前置单元;前置单元停止后续功能模块的调用,也不将该用户请求发送给EPG处理单元进行后续处理。
应用实例2-日志功能模块
该功能模块的作用是对用户请求进行跟踪记录,并生成日志。
日志功能模块被调用时,通过HttpServletRequest方法提取用户请求的用户session(会话)和cookie(甜点),以及所请求的URL(Uniform ResourceLocator,通用资源定位符)等信息;并将上述信息记录在日志文件中,该功能模块执行完毕后,前置单元调用后续功能模块或将用户请求发送给EPG处理单元进行后续处理。
基于本发明的原理,上述实施例还可以有多种变换方式。例如:
模块加载单元可以定时在设定的路径中查找并加载尚未加载的功能模块的可执行文件。即不使用上述实施例的配置管理单元。当然,若采用这种实施方式,功能模块的运行参数无法动态进行配置,尤其是各功能模块的运行顺序也无法动态设置,需要以配置文件的形式保存。这种实施方式适用于功能模块之间没有先后执行顺序的差别,且各功能模块的运行参数可预先设定,无需动态修改的EPG系统,新加载的功能模块可最先或最后执行。
上述实施例针对JAVA开发环境中开发的EPG系统及其功能模块的加载运行方法进行了描述,对于其它开发环境开发的EPG系统,模块加载单元根据可执行文件加载的功能模块可能与模块加载单元及EPG系统属于不同的进程,需要采用进程间通讯手段进行数据交换。这种实施方式适用于需动态加载的功能模块数量不多的EPG系统。
Claims (9)
1.一种电子节目菜单系统,包含请求接收单元和电子节目菜单处理单元,其特征在于,该系统还包含:前置单元,模块加载单元;其中,
模块加载单元用于根据新增功能模块的可执行文件名加载功能模块,并保存相应的功能模块实例标识,将相应的功能模块实例标识及运行参数保存,所述运行参数包含:运行序号,用于标识功能模块的调用顺序;
前置单元用于在接收到请求接收单元发送的用户请求后,使用功能模块实例标识,将用户请求作为调用参数,依次调用模块加载单元加载的可被调用的功能模块;各功能模块调用完毕后,将经过各功能模块处理的用户请求发送至电子节目菜单处理单元进行电子节目菜单系统处理。
2.如权利要求1所述的电子节目菜单系统,其特征在于,该系统还包含:配置管理单元,运行参数存储单元;其中,
配置管理单元用于提供添加新增功能模块的可执行文件名及其相应的运行参数的用户界面,将添加的新增功能模块的可执行文件名及其相应的运行参数发送至所述模块加载单元;
所述模块加载单元根据配置管理单元发送的新增功能模块的可执行文件名加载功能模块,并将相应的功能模块实例标识及运行参数保存在运行参数存储单元中。
3.如权利要求2所述的电子节目菜单系统,其特征在于,所述配置管理单元还用于修改保存在所述运行参数存储单元中的,当前已加载的各功能模块的运行参数;所述运行参数还包含:运行状态,用于标识当前已加载的功能模块是否可以被调用。
4.如权利要求2所述的电子节目菜单系统,其特征在于,所述电子节目菜单系统及各功能模块采用JAVA语言开发;所述模块加载单元采用如下方法加载功能模块:根据功能模块的可执行文件名获得相应的功能模块的类名;根据类名加载可执行文件中的类代码;生成该类的实例,获得相应的类实例标识;所述类实例标识即功能模块实例标识;可执行文件名中包含功能模块的类名。
5.如权利要求3所述的电子节目菜单系统,其特征在于,所述运行参数存储单元中还存储:新增模块标识,用于标识是否有新的功能模块被加载;和运行参数修改标识,用于标识已加载的功能模块的运行参数是否被修改;所述模块加载单元将新增的功能模块实例标识及运行参数保存在运行参数存储单元时将新增模块标识设置为已新增;所述配置管理单元修改已加载的功能模块的运行参数时将运行参数修改标识设置为已修改;所述前置单元在接收到用户请求后对新增模块标识和运行参数修改标识进行判断:若新增模块标识为已新增或运行参数修改标识为已修改,则使用更新的可被调用的功能模块组合和顺序进行所述功能模块的调用,并将新增模块标识设置为未新增,将运行参数修改标识设置为未修改。
6.一种电子节目菜单系统的功能模块动态加载运行方法,其特征在于,该方法包含如下步骤:
A:电子节目菜单系统的前置单元接收用户请求;
B:所述前置单元使用功能模块实例标识,将该用户请求作为调用参数,依次调用电子节目菜单系统的模块加载单元加载的可被调用的功能模块;所述模块加载单元采用如下步骤加载功能模块:
A1:接收电子节目菜单系统的配置管理单元发送的新增功能模块的可执行文件名及其相应的运行参数;
A2:根据可执行文件名加载功能模块,生成功能模块实例;
A3:保存功能模块实例标识及相应的运行参数;
所述运行参数包含:运行序号,用于标识功能模块的调用顺序;
C:所述前置单元将经过各功能模块处理的用户请求发送至电子节目菜单系统的电子节目菜单处理单元进行电子节目菜单系统处理。
7.如权利要求6所述的电子节目菜单系统的功能模块动态加载运行方法,其特征在于,所述步骤A3后还包含如下步骤:
A4:所述配置管理单元显示已加载的功能模块的运行参数;
A5:修改功能模块的运行参数,并保存修改结果;
所述运行参数还包含:运行状态,用于标识当前已加载的功能模块是否可以被调用。
8.如权利要求6所述的电子节目菜单系统的功能模块动态加载运行方法,其特征在于,所述步骤A2包含如下子步骤:
A21:根据功能模块的可执行文件名获得相应的功能模块的类名;
A22:根据上述类名加载可执行文件中的类代码;
A23:生成类的实例,获得相应的类实例标识;
所述电子节目菜单系统及各功能模块采用JAVA语言开发;所述类实例标识即功能模块实例标识;可执行文件名中包含功能模块的类名。
9.如权利要求7所述的电子节目菜单系统的功能模块动态加载运行方法,其特征在于,
所述步骤A3之后还包含如下步骤:将新增模块标识设置为已新增,标识有新的功能模块被加载;
所述步骤A5之后还包含如下步骤:将运行参数修改标识设置为已修改,标识已加载的功能模块的运行参数被修改;
所述步骤A和B之间还包含如下步骤:
A’:所述前置单元对新增模块标识和运行参数修改标识进行判断:若新增模块标识为已新增或运行参数修改标识为已修改,则更新功能模块列表;并将新增模块标识设置为未新增,将运行参数修改标识设置为未修改;
所述功能模块列表中包含所述模块加载单元加载的可被调用的功能模块及其运行序号;
在所述步骤B中,前置单元根据功能模块列表,按照各功能模块的运行序号依序进行所述功能模块的调用。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2007101459490A CN101115180B (zh) | 2007-09-07 | 2007-09-07 | 一种电子节目菜单系统及其功能模块动态加载运行方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2007101459490A CN101115180B (zh) | 2007-09-07 | 2007-09-07 | 一种电子节目菜单系统及其功能模块动态加载运行方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101115180A CN101115180A (zh) | 2008-01-30 |
CN101115180B true CN101115180B (zh) | 2011-01-05 |
Family
ID=39023235
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2007101459490A Expired - Fee Related CN101115180B (zh) | 2007-09-07 | 2007-09-07 | 一种电子节目菜单系统及其功能模块动态加载运行方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101115180B (zh) |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101882072A (zh) * | 2009-05-05 | 2010-11-10 | 康佳集团股份有限公司 | 一种菜单的定制方法、系统及服务器 |
CN101695201B (zh) * | 2009-09-28 | 2014-09-10 | 深圳中兴力维技术有限公司 | 一种基站增值应用接入嵌入式监控设备的装置及方法 |
CN102135895B (zh) * | 2010-12-29 | 2013-08-28 | 华为软件技术有限公司 | web系统升级方法及web系统 |
CN102339319A (zh) * | 2011-10-26 | 2012-02-01 | 中国信息安全测评中心 | 一种web管理系统及其菜单加载方法 |
CN102594588A (zh) * | 2012-01-19 | 2012-07-18 | 中兴通讯股份有限公司 | 一种管理web功能模块的方法和系统 |
CN104331299A (zh) * | 2013-07-22 | 2015-02-04 | 腾讯科技(深圳)有限公司 | 基于php环境的磁盘的文件加载方法和装置 |
CN110597812B (zh) * | 2019-09-09 | 2022-04-15 | 上海钧正网络科技有限公司 | 菜单配置方法、装置、终端及可读存储介质 |
CN113849245B (zh) * | 2021-09-23 | 2023-09-12 | 武汉深之度科技有限公司 | 一种应用程序运行方法、计算设备及存储介质 |
-
2007
- 2007-09-07 CN CN2007101459490A patent/CN101115180B/zh not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
CN101115180A (zh) | 2008-01-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101115180B (zh) | 一种电子节目菜单系统及其功能模块动态加载运行方法 | |
KR101119146B1 (ko) | 무선 장치 상의 애플리케이션으로의 링킹 장치 및 방법 | |
US8200626B1 (en) | Mobile device file management | |
JP5047238B2 (ja) | 加入フィルタを広告アプリケーションにマッピングするための方法およびシステム | |
US20130166777A1 (en) | Device profile assignment based on device capabilities | |
US20090083147A1 (en) | Separation of advertising content and control | |
CN102902733A (zh) | 一种基于内容订阅的信息推送方法、装置及系统 | |
CN105611422B (zh) | 基于多媒体榜单的在线直播方法及装置 | |
US8001213B2 (en) | Method, apparatus and computer program product for providing unrestricted content on a user terminal | |
WO2023093429A1 (zh) | 微应用的运行方法、装置、设备、存储介质及程序产品 | |
US20090119388A1 (en) | Content relaying device and content relaying method | |
US11151219B2 (en) | Generating rich digital documents from limited instructional data | |
CN101132413B (zh) | 基于Web应用的ActiveX组件的复用方法 | |
US20130304836A1 (en) | Method and apparatus for processing micro web log messages | |
EP2069900A2 (en) | System and method for managing and using electronic widgets | |
CN106933839A (zh) | 一种页面跳转方法和装置 | |
CN109729116B (zh) | 插件信息的传输方法、装置、存储介质及电子装置 | |
CN108733666B (zh) | 服务器信息推送方法、终端信息发送方法及装置、系统 | |
JP2011044156A (ja) | プッシュコンテンツ処理プロトコル内をパスするメタデータ最適化方法およびシステム | |
CN102209116A (zh) | 一种获取网络电视节目信息的方法、装置以及电视机 | |
CN101360009A (zh) | 机顶盒应用管理方法及系统 | |
WO2009108425A2 (en) | Content management that addresses levels of functionality | |
JP2010044762A (ja) | 広告目的のためのデータファサード加入フィルタを用いる方法およびシステム | |
CN110337043A (zh) | 电视的视频播放方法、装置及存储介质 | |
CN110544475B (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 |
Granted publication date: 20110105 Termination date: 20160907 |
|
CF01 | Termination of patent right due to non-payment of annual fee |