一种联动显示及跳转控制方法及装置的制作方法

文档序号:6580701阅读:112来源:国知局

专利名称::一种联动显示及跳转控制方法及装置的制作方法
技术领域
:本发明涉及通信
技术领域
,尤其涉及一种联动显示及跳转控制方法及装置。
背景技术
:现有技术中,多种Web框架都采用MVC(Model-View-Controller,模型-视图-控制器)架构,MVC存在于Desktop程序中,M指数据模型,V指用户界面,C指控制器。4莫型表示业务数据,例如处理数据库,被模型返回的数据是中立的,就是说模型与数据格式无关,这样一个模型能为多个视图提供数据;由于应用于模型的代码只需写一次就可以被多个视图重用,所以减少了代码的重复性。视图是应用程序中用户界面相关的部分,是用户看到并与之交互的界面,MVC能为应用程序处理很多不同的视图,在视图中其实没有真正的处理发生,不管这些数据是联机存储的还是一个雇员列表,作为视图来讲,只是作为一种输出数据并允许用户操纵的方式。控制器工作就是根据用户的输入,控制用户界面数据显示和更新模型对象状态,控制器接受用户的输入并调用冲莫型和4见图去完成用户的需求,所以当单击Web页面中的超链接和发送HTML(HyperTextMarkupLanguage,超文本置标语言)表单时,控制器本身不输出任何东西和做任何处理,只是接收请求并决定调用哪个模型构件去处理请求,然后确定用哪个视图来显示模型处理返回的数据。简单来说MVC的工作过程首先控制器接收用户通过^L图发送的请求,并决定应该调用哪个模型来进行处理,然后模型用业务逻辑来处理用户的请求并返回数据,最后控制器用相应的视图格式化模型返回的数据,并通过视图呈现给用户。现有技术中,使用非常广泛的JSF(JavaServerFaces,Java服务器界面)结构就是MVC架构在Web上的实现,如图1所示,当用户通过界面组件的视图请求一个JSF页面时,请求发送到控制器的FacesServlet(服务组件),FacesServlet是JSF框架中所有用户请求都要经过的控制器元素;FacesServlet分析用户请求,使用模型中的BackingBean调用模型的各种动作,BackingBean就是模型的例子;JSF用户界面组件是视图层的例子。在实际中,BackingBean被赋予了更多的功能。如图2中所示,也就是BackingBean可以利用控制器实现间接的视图跳转,当BackingBean需要根据不同情况联动到不同视图时就需要利用该功能,在这种情况下,BackingBean同时肩负着控制器和模型这两个功能。现有方案如图3所示,视图中包括联动源页面和联动目的页面,BackingBean集成了控制器和模型功能,其中包括联动源BackingBean和联动目的BackingBean。耳关动过禾呈有以下两种方式一,联动源页面上包含联动源的请求信息,例如联动源BackingBean的ID、联动的方法名称等,用户点击界面则向联动源BackingBean发送联动请求。联动源BackingBean接收到联动请求后,获得当前自身的状态,例如设备的ID,联动源BackingBean可以根据这些信息查询其它联动目的页面需要的信息,例如设备IP地址、名称等。在获得联动目的页面的全部信息后,对联动目的BackingBean进行设置,即将联动目的页面的与此联动相关的需要展示的全部信息存储到联动目的BackingBean中,使联动目的页面根据所述联动目的BackingBean中的状态进4亍显示。二,4关动源BackingBean调用if关动目的页面的URL(UniformResourceLocator,统一资源定位符)进行跳转。这样联动目的页面就可以正确显示目的BackingBean中的状态。现有方案存在以下缺点1,可扩展性差联动源组件和联动目的组件形成了相互的依赖关系,尤其是两个组件之间可以相互联动时会形成循环依赖,限制了联动关系的扩展范围。另外,由于联动关系要编写在联动源页面以及联动源BackingBean中,不能够自由扩展要跳转的目的。2,易用性差(1)不能够根据目的组件的安装情况决定是否显示该联动5组件,只能显示全部联动组件,当用户联动至没有安装的组件时再提示用户该组件未安装。(2)不能根据用户的登录权限来决定显示哪些跳转目的,遇到用户没有权限的情况只能提示该用户没有访问权限。(3)不能根据跳转的个数决定是显示的方式,例如若只有一个联动目的可以显示为一个链接,而多个联动目的则显示为菜单。3,可维护性差联动关系遍布整个联动源界面和联动源BackingBean,如果联动的方式需要增加、修改或删除,则需要增加、修改或删除所有这些联动代码,不利于维护。
发明内容本发明提供了一种联动显示及跳转控制方法及装置,解决现有方案中的可扩展性、可控性、易用性、可维护性的问题。本发明提供了一种联动显示及跳转控制方法,应用于包括视图层、控制器联动中间层和模型层的系统中,所述视图层包括联动源界面和联动目的界面,所述模型层包括联动源BackingBean、联动目的BackingBean和联动关系记录表,所述方法包括以下步骤所述联动中间层接收到所述联动源界面发送的跳转请求,所述请求中携带联动源BackingBean的标识、联动目的BackingBean的标识和跳转页面的URL;所述联动中间层根据联动源BackingBean的标识调用联动源的参数获取接口,获得需要传递给所述联动目的BackingBean的参数;所述联动中间层根据联动目的BackingBean的标识调用联动目的的参数设置接口,将从所述联动源BackingBean中获取的参数设置进去;所述联动中间层根据跳转页面的URL跳转至联动目的页面,所述联动目的页面根据所述联动目的BackingBean中的状态进行显示。所述联动中间层接收到所述联动源界面发送的跳转请求,之前还包括所述联动中间层接收所述联动源界面发送的查询联动关系记录请求;所述联动中间层从所述联动关系记录表中查询联动关系记录,获得联动源ID、联动源BackingBean的标识、跳转页面的URL、联动目的BackingBean的标识;所述联动中间层将所述联动关系记录发送给所述联动源界面。所述联动中间层接收到所述联动源界面发送的跳转请求,之前还包括所述联动中间层接收所述联动源界面发送查询显示请求,所述查询请求中携带联动源BackingBean的标识;所述if关动中间层才艮据所述耳关动源BackingBean的标识查找对应的显示权限。所述联动中间层根据用户权限、组件安装情况确定是否具有显示权限。还包括新的组件注册时,将该组件对应关系添加到联动关系记录表中;已有组件卸载时,将该组件的对应关系从联动关系记录表中删除。本发明提供了一种联动的显示及跳转控制装置,包括视图层、控制器联动中间层和模型层,所述视图层包括联动源界面和联动目的界面,所述模型层包括联动源BackingBean、眹动目的BackingBean和联动关系记录表,所述联动中间层,用于接收到所述联动源界面发送的跳转请求,所述请求中携带联动源BackingBean的标识、联动目的BackingBean的标识和跳转页面的URL;根据所述联动源BackingBean的标识调用联动源的参数获取接口,获得需要传递给所述联动目的BackingBean的参数;根据所述联动目的BackingBean的标识调用联动目的的参数设置接口,将从所述联动源BackingBean中获取的参数设置进去;根据跳转页面的URL跳转至联动目的页面,使所述联动目的页面根据所述联动目的BackingBean中的状态进行显示。所述联动中间层,还用于接收所述联动源界面发送的查询联动关系记录请求,从所述联动关系记录表中查询联动关系记录,获得联动源ID、联动源BackingBean的标识、跳转页面的URL、联动目的BackingBean的标识;将所述联动关系记录发送给所述联动源界面。所述联动中间层,还用于接收所述联动源界面发送查询显示请求,所述查询请求中携带联动源BackingBean的标识,根据所述联动源BackingBean的标识查找对应的显示权限。所述联动中间层,还用于新的组件注册时,将该组件对应关系添加到联动关系记录表中;已有组件卸载时,将该组件的对应关系从联动关系记录表中删除。所述联动中间层,还用于根据用户权限、组件安装情况确定是否具有显示权限。与现有技术相比,本发明具有以下优点本发明中,由于增加了联动中间层,并将联动记录单独存储,所以解除了联动源组件和联动目的组件的依赖关系。由于联动关系以联动记录的形式单独存储,所以联动关系可以自由增加、修改或删除,且不必硬编码至代码中。由于增加了联动中间层,并且每个联动可以拥有自己的显示判定实现,所以可以根据用户权限(只显示具有权限的组件)、组件安装情况(只显示已安装的组件)以及其它业务逻辑决定是否显示联动。可以根据跳转的个数决定联动的界面显示方式,例如若只有一个联动目的可以显示为一个链接,而多个联动目的则显示为菜单,这样对于只有一个联动目的的情况,用户可以减少一次选择,如果需要修改显示方式,只在一处修改即可。联动关系遍布整个联动源界面和联动源BackingBean,如果联动方式需要增加、修改或删除,则需要增加、修改或删除所有这些联动代码,可以只操作联动关系记录表,有利于维护。图1是现有技术中JSF框架与MVC架构的对应图;图2是现有技术中JSF框架的实际应用图3是现有技术中JSF框架中BackingBean集成控制器和模型功能示意图4是本发明中一种联动的显示及跳转控制装置结构图5是本发明中基于图4的具体应用场景的联动界面生成示意图;图6是本发明中图4的具体应用场景的联动跳转示意图;图7是本发明中一种联动的显示及跳转控制方法流程图。具体实施例方式本发明中的核心思想是通过增加联动中间层,解除了联动源组件和联动目的组件的依赖关系,使得每个联动可以拥有自己的显示判定实现,可以根据用户权限、组件安装情况以及其它业务逻辑决定是否显示联动。可以根据跳转的个数决定联动的界面显示方式,并且将联动关系以联动记录的形式单独存储,使得联动关系可以自由增加、修改或删除,且不必硬编码至代码中。本发明中提供一种联动显示及跳转控制装置,如图4所示,包括视图层410、控制器联动中间层420和模型层430。模型层430包括联动源BackingBean431、联动目的BackingBean432和联动关系记录表433。图4中带数字的实线表示联动的流程顺序,虚线表示界面及控制其显示的BackingBean之间的对应关系。其中,视图层410包括联动源界面411和联动目的界面412。联动源界面411中包含用于显示的联动界面组件,该联动界面组件包括联动源ID属性。联动源界面411根据联动源ID调用控制器查询联动记录关系表,获得该联动源ID对应的联动记录;并根据获得的联动记录个数决定显示的方式,例如只有一个联动记录显示为单一链接,有多个联动记录则显示为菜单;根据联动记录设置用户对应的动作属性,例如通过键盘输入触发或鼠标输入触发等,当用户在联动源界面触发动作属性对应的动作时,调用控制器联动中间层的请求跳转。联动目的界面412,用于显示要跳转的目的的界面,既可以与联动源界面411在同一个组件内,也可以在不同的组件内。控制器联动中间层420,与视图层中的联动源界面411和联动目的界面412连接,与模型层430中的联动源BackingBean431、联动目的BackingBean432和联动记录关系表433连接,包括以下功能接收所述联动源界面发送的查询联动关系记录请求,从所述联动关系记录表中查询联动关系记录,获得联动源ID、联动源BackingBean的标识、跳转页面的URL、联动目的BackingBean的标识;将所述联动关系记录发送给所述联动源界面。接收到所述联动源界面发送的跳转请求,所述请求中携带联动源BackingBean的标识、洱关动目的BackingBean的标识和跳转页面的URL;才艮据所述耳关动源BackingBean的标识调用联动源的参数获取接口,获得需要传递给所述联动目的BackingBean的参数;才艮据所述if关动目的BackingBean的标识调用联动目的的参数设置接口,将从所述联动源BackingBean中获取的参数设置进去;根据跳转页面的URL跳转至联动目的页面,使所述联动目的页面根据所述联动目的BackingBean中的状态进4亍显示联动界面生成流程中查询联动关系记录,如图5所示,包括以下步骤步骤402,控制器^i动中间层420接收联动源界面411发送的联动记录查询请求,该联动记录查询请求中携带联动源ID;步骤403,控制器联动中间层420向模型层430中的联动关系记录表433转发联动记录查询请求,该联动关系记录表如表1所示表1:<table>tableseeoriginaldocumentpage10</column></row><table>表1中记录了联动源ID和联动目的ID的对应关系,例如,SI对应Dl和D2,S2对应D3,S3对应D4。例如,联动记录查询请求中携带联动源IDS3,则查找到对应的联动目的IDD4,将联动目的IDD4返回给联动源界面。在查询联动关系记录之前还可以查询是否显示目的联动组件,包括以下步骤步骤401,控制器联动中间层420接收联动源界面411发送的查询请求,所述查询请求中携带联动源ID,根据该联动源ID查找对应的显示权限,用以确定是否显示目的联动组件。例如,显示权限关系如表2所示<table>tableseeoriginaldocumentpage11</column></row><table>联动源ID并不能对应为某一个具体的用户,例如用户A或用户B,只能对应为一类用户,例如超级管理员或维护员。用户是由登录来决定的,每一个联动源ID都可以有不同的用户登录并访问。但每一个联动可以对不同的用户赋给不同的权限。表2中,维护员登录联动源IDS1,具有的权限为可以显示,查看员登录联动源IDS1,具有的权限为可以显示;维护员登录联动源IDS2,具有的权限为可以显示,查看员登录联动源IDS2,具有的权限为不可以显示;维护员登录联动源IDS3,具有的权限为可以显示,查看员登录联动源IDS3,具有的权限为不可以显示;维护员登录联动源IDS4,具有的权限为不可以显示,查看员登陆联动源IDS4,具有的权限为不可以显示。对于管理员则可以不定义,因为对管理员所有的联动都将显示。本发明中,在生成联动界面,用户点击后进行联动跳转流程,如图6所示,包括以下步骤步骤404,控制器联动中间层420接收到联动源界面411发送的跳转请求,该跳转请求中携带联动源ID;步骤405,联动源BackingBean在系统中有4艮多,但每一个都有一个ID。控制中间层420可以根据联动源ID来获取联动源BackingBean,因为每一个联动源BackingBean都实现了参数获取接口,所以联动中间层可以调用该接口来获得需要传递的参数。每一个特定的联动需要传递的参数的内容是可以不同的,需要在目的BackingBean中进行解析。步骤406,控制器联动中间层420将所述传递参数设置到所述目的BackingBean中;步骤407,控制器联动中间层420向所述联动目的界面发起跳转,使所述联动目的界面根据所述传递参数进行显示。模型层430包括联动源BackingBean431,用于记录联动源界面显示的各个状态,必须实现参数获取接口,控制器联动中间层可以通过该接口来获取需要传递给联动目的BackingBean的各个参数。联动目的BackingBean432,用于记录耳关动目的界面显示的各个状态,必须实现状态设置接口,控制器联动中间层可以通过该接口来设置联动目的BackingBean的状态。联动关系记录表431,用于存储已经注册的联动记录。一个联动源ID和一个3关动目的确定一条l关动记录,该if关动记录对应一次跳转,属性包括3关动源ID、联动源BackingBean的标识、跳转页面的URL、联动目的BackingBean的标识。其中,if关动记录关系的增加为新的组件注册时,将该对应关系添加到写关动关系记录表中;联动记录关系的删除为卸载已有组件时,将该组件的对应关系从联动关系记录表中删除。本发明提供了一种联动的显示及跳转控制方法,应用于包括视图层、控制器联动中间层和模型层的系统中,所述视图层包括联动源界面和联动目的界面,所述模型层包括联动源BackingBean、联动目的BackingBean和联动关系记录表,所述方法如图7所示,包括以下步骤步骤701,所述联动中间层接收所述联动源界面发送的查询联动关系记录请求;所述联动中间层从所述联动关系记录表中查询联动关系记录,获得联动源ID、联动源BackingBean的标识、跳转页面的URL、联动目的BackingBean的标识;所述联动中间层将所述联动关系记录发送给所述联动源界面。步骤702,所述联动中间层接收到所述联动源界面发送的跳转请求后,所12述联动中间层根据联动源BackingBean的标识调用联动源的参数获取接口,获得需要传递给所述联动目的BackingBean的参数;步骤703,所述联动中间层根据联动目的BackingBean的标识调用联动目的的参数设置接口,将从所述联动源BackingBean中获取的参数设置进去;步骤704,所述联动中间层根据跳转页面的URL跳转至联动目的页面,联动目的页面才艮据目的BackingBean中的状态进行显示。通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到本发明可以通过硬件实现,也可以借助软件加必要的通用硬件平台的方式来实现。基于这样的理解,本发明的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是CD-ROM,U盘,移动硬盘等)中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。本领域技术人员可以理解附图只是一个优选实施例的示意图,附图中的模块或流程并不一定是实施本发明所必须的。本领域技术人员可以理解实施例中的装置中的模块可以按照实施例描述进行分布于实施例的装置中,也可以进行相应变化位于不同于本实施例的一个或多个装置中。上述实施例的模块可以合并为一个模块,也可以进一步拆分成多个子模块。上述本发明序号仅仅为了描述,不代表实施例的优劣。以上公开的仅为本发明的几个具体实施例,但是,本发明并非局限于此,任何本领域的技术人员能思之的变化都应落入本发明的保护范围。权利要求1、一种联动显示及跳转控制方法,应用于包括视图层、控制器联动中间层和模型层的系统中,所述视图层包括联动源界面和联动目的界面,所述模型层包括联动源BackingBean、联动目的BackingBean和联动关系记录表,其特征在于,所述方法包括以下步骤所述联动中间层接收到所述联动源界面发送的跳转请求,所述请求中携带联动源BackingBean的标识、联动目的BackingBean的标识和跳转页面的URL;所述联动中间层根据联动源BackingBean的标识调用联动源的参数获取接口,获得需要传递给所述联动目的BackingBean的参数;所述联动中间层根据联动目的BackingBean的标识调用联动目的的参数设置接口,将从所述联动源BackingBean中获取的参数设置进去;所述联动中间层根据跳转页面的URL跳转至联动目的页面,所述联动目的页面根据所述联动目的BackingBean中的状态进行显示。2、如权利要求l所述的方法,其特征在于,所述联动中间层接收到所述联动源界面发送的跳转请求,之前还包括所述联动中间层接收所述联动源界面发送的查询联动关系记录请求;所述联动中间层从所述联动关系记录表中查询联动关系记录,获得联动源ID、联动源BackingBean的标识、跳转页面的URL、联动目的BackingBean的标识;所述联动中间层将所述联动关系记录发送给所述联动源界面。3、如权利要求2所述的方法,其特征在于,所述联动中间层接收到所述联动源界面发送的跳转请求,之前还包括所述联动中间层接收所述联动源界面发送查询显示请求,所述查询请求中携带联动源BackingBean的标识;所述联动中间层根据所述联动源BackingBean的标识查找对应的显示权限。4、如权利要求3所述的方法,其特征在于,所述联动中间层根据用户权限、组件安装情况确定是否具有显示权限。5、如权利要求l所述的方法,其特征在于,还包括新的组件注册时,将该组件对应关系添加到联动关系记录表中;已有组件卸载时,将该组件的对应关系从联动关系记录表中删除。6、一种联动的显示及跳转控制装置,包括视图层、控制器联动中间层和模型层,所述视图层包括联动源界面和联动目的界面,所述模型层包括联动源BackingBean、联动目的BackingBean和联动关系记录表,其特征在于,所述联动中间层,用于接收到所述联动源界面发送的跳转请求,所述请求中携带联动源BackingBean的标识、联动目的BackingBean的标识和跳转页面的URL;根据所述联动源BackingBean的标识调用联动源的参数获取接口,获得需要传递给所述联动目的BackingBean的参数;根据所述联动目的BackingBean的标识调用联动目的的参数设置接口,将从所述联动源BackingBean中获取的参数设置进去;根据跳转页面的URL跳转至联动目的页面,使所述联动目的页面根据所述联动目的BackingBean中的状态进行显示。7、如权利要求6所述的装置,其特征在于,所述联动中间层,还用于接收所述联动源界面发送的查询联动关系记录请求,从所述联动关系记录表中查询联动关系记录,获得联动源ID、联动源BackingBean的标识、跳转页面的URL、联动目的BackingBean的标识;将所述联动关系记录发送给所述联动源界面。8、如权利要求6所述的装置,其特征在于,所述联动中间层,还用于接收所述联动源界面发送查询显示请求,所述查询请求中携带联动源BackingBean的标识,根据所述耳关动源BackingBean的标识查找对应的显示权限。9、如权利要求8所述的装置,其特征在于,所述联动中间层,还用于根据用户权限、组件安装情况确定是否具有显示权限。10、如权利要求6所述的装置,其特征在于,所述联动中间层,还用于新的组件注册时,将该组件对应关系添加到联动关系记录表中;已有组件卸载时,将该组件的对应关系从联动关系记录表中删除。全文摘要本发明公开了一种联动显示及跳转控制方法,包括联动中间层查询联动关系记录,获得联动源ID、联动源BackingBean的标识、跳转页面的URL、联动目的BackingBean的标识;联动中间层接收到联动源界面发送的跳转请求后,根据联动源BackingBean的标识调用联动源的参数获取接口获得需要传递给联动目的BackingBean的参数;联动中间层根据联动目的BackingBean的标识调用联动目的的参数设置接口,将从联动源BackingBean中获取的参数设置进去,联动中间层根据跳转页面的URL跳转至目的页面,联动目的页面根据联动目的BackingBean中的状态进行显示。本发明增加了联动的可扩展性、可控性、易用性、可维护性。文档编号G06F9/44GK101661390SQ20091017647公开日2010年3月3日申请日期2009年9月16日优先权日2009年9月16日发明者余天舒申请人:杭州华三通信技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1