掌桥专利:专业的专利平台
掌桥专利
首页

页面生成的方法、装置、电子设备和存储介质

文献发布时间:2023-06-19 12:13:22


页面生成的方法、装置、电子设备和存储介质

技术领域

本发明涉及计算机技术领域,尤其涉及一种页面生成的方法、装置、电子设备和存储介质。

背景技术

移动客户端组件化已经成为广泛应用的技术,为了减少组件重复开发,开发方通常将开发的组件封装,业务方直接使用即可,而不需要接触组件内复杂的逻辑。随着不同业务方的个性化需求越来越多,为减少开发方的组件开发压力,现有技术中在组件开发时可以设置用于业务方开发的接口,使业务方可以对页面的视图层进行个性化需求的开发。但是,这种方式生成的页面只能实现业务方的简单需求,如增加网络请求等需要控制器处理的需求无法实现。

发明内容

有鉴于此,本发明实施例提供一种页面生成的方法、装置、电子设备和存储介质,能够解决业务方可以对页面的视图层进行个性化需求的开发,但生成的页面只能实现业务方的简单需求,如增加网络请求等需要控制器处理的需求无法实现的问题。

为实现上述目的,根据本发明实施例的一个方面,提供了一种页面生成的方法。

本发明实施例的一种页面生成的方法包括:接收目标页面的页面生成请求,获取所述页面生成请求中的页面标识,以查询对应的控制器;调用所述控制器,创建所述目标页面对应的控制器代理,查询所述目标页面包括的系统楼层和业务方楼层;获取所述系统楼层的相应数据,调用所述控制器代理获取所述业务方楼层的相应数据,以渲染所述系统楼层和所述业务方楼层,生成所述目标页面。

在一个实施例中,调用所述控制器代理获取所述业务方楼层的相应数据,包括:

调用所述控制器代理,查询所述业务方楼层对应的数据模型,以从所述数据模型中获取所述业务方楼层的相应数据。

在又一个实施例中,在所述生成所述目标页面之后,还包括:

接收页面操作指令,获取所述页面操作指令对应的楼层数据,以确定所述页面操作指令对应的楼层类型;

若所述楼层类型为所述系统楼层,则将所述页面操作指令发送至所述控制器,以调用所述控制器处理所述页面操作指令;

若所述楼层类型为所述业务方楼层,则将所述页面操作指令发送至所述控制器代理,以调用所述控制器代理处理所述页面操作指令。

在又一个实施例中,所述页面操作指令包括楼层交互指令;

调用所述控制器代理处理所述页面操作指令,包括:

调用所述控制器代理,查询所述页面操作指令对应的目标楼层标识,获取所述目标楼层标识对应目标楼层的相应数据,以基于所述页面操作指令进行更新,渲染更新后的目标楼层。

在又一个实施例中,调用所述控制器代理处理所述页面操作指令,包括:

调用所述控制器代理,通过预设接口将所述页面操作指令发送至所述控制器,以调用所述控制器处理所述页面操作指令。

在又一个实施例中,渲染所述业务方楼层,包括:

获取所述业务方楼层的楼层信息,以确定所述业务方楼层的楼层顺序;

调用所述控制器代理,基于所述楼层顺序,渲染所述业务方楼层。

在又一个实施例中,调用控制器,创建所述页面对应的控制器代理,包括:

接收所述控制器代理对应的对象类名,存储所述对象类名,以基于所述对象类名创建所述控制器代理。

为实现上述目的,根据本发明实施例的另一方面,提供了一种页面生成的装置。

本发明实施例的一种页面生成的装置包括:接收单元,用于接收目标页面的页面生成请求,获取所述页面生成请求中的页面标识,以查询对应的控制器;创建单元,用于调用所述控制器,创建所述目标页面对应的控制器代理,查询所述页面包括的系统楼层和业务方楼层;生成单元,用于获取所述系统楼层的相应数据,调用所述控制器代理获取所述业务方楼层的相应数据,以渲染所述系统楼层和所述业务方楼层,生成所述目标页面。

在一个实施例中,所述生成单元,具体用于:

调用所述控制器代理,查询所述业务方楼层对应的数据模型,以从所述数据模型中获取所述业务方楼层的相应数据。

在又一个实施例中,所述接收单元,还用于接收页面操作指令,获取所述页面操作指令对应的楼层数据,以确定所述页面操作指令对应的楼层类型;

所述装置还包括:

处理单元,用于若所述楼层类型为所述系统楼层,则将所述页面操作指令发送至所述控制器,以调用所述控制器处理所述页面操作指令;若所述楼层类型为所述业务方楼层,则将所述页面操作指令发送至所述控制器代理,以调用所述控制器代理处理所述页面操作指令。

在又一个实施例中,所述处理单元,具体用于:

调用所述控制器代理,查询所述页面操作指令对应的目标楼层标识,获取所述目标楼层标识对应目标楼层的相应数据,以基于所述页面操作指令进行更新,渲染更新后的目标楼层。

在又一个实施例中,所述处理单元,具体用于:

调用所述控制器代理,通过预设接口将所述页面操作指令发送至所述控制器,以调用所述控制器处理所述页面操作指令。

在又一个实施例中,所述生成单元,具体用于:

获取所述业务方楼层的楼层信息,以确定所述业务方楼层的楼层顺序;

调用所述控制器代理,基于所述楼层顺序,渲染所述业务方楼层。

在又一个实施例中,所述创建单元,具体用于:

接收所述控制器代理对应的对象类名,存储所述对象类名,以基于所述对象类名创建所述控制器代理。

为实现上述目的,根据本发明实施例的再一个方面,提供了一种电子设备。

本发明实施例的一种电子设备,包括:一个或多个处理器;存储装置,用于存储一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现本发明实施例提供的页面生成的方法。

为实现上述目的,根据本发明实施例的又一个方面,提供了一种计算机可读介质。

本发明实施例的一种计算机可读介质,其上存储有计算机程序,所述程序被处理器执行时实现本发明实施例提供的页面生成的方法。

上述发明中的一个实施例具有如下优点或有益效果:本发明实施例中,在目标页面生成时,可以通过调用对应的控制器来创建控制器代理,获取系统楼层的相应数据后,调用控制器代理可以获取业务方楼层的相应数据,进而对系统楼层和业务方楼层进行渲染,从而生成目标页面。如此本发明实施例中,在生成页面时,可以调用控制器来创建控制器代理,进而通过控制器代理来获取业务方楼层的相应数据以及对业务方楼层的渲染,从而可以通过控制器代理实现业务方如网络请求等需要控制器处理的需求,进而可以满足业务方更多个性化的开发需求。

上述的非惯用的可选方式所具有的进一步效果将在下文中结合具体实施方式加以说明。

附图说明

附图用于更好地理解本发明,不构成对本发明的不当限定。其中:

图1是根据本发明实施例的组件开发的一种架构的示意图;

图2是根据本发明实施例的页面生成的方法的一种主要流程的示意图;

图3是根据本发明实施例的页面操作指令处理的方法的一种主要流程的示意图;

图4是根据本发明实施例的页面生成的装置的主要单元的示意图;

图5是本发明实施例可以应用于其中的一种示例性系统架构图;

图6是适于用来实现本发明实施例的计算机系统的结构示意图。

具体实施方式

以下结合附图对本发明的示范性实施例做出说明,其中包括本发明实施例的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识到,可以对这里描述的实施例做出各种改变和修改,而不会背离本发明的范围和精神。同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。

需要指出的是,在不冲突的情况下,本发明中的实施例以及实施例中的特征可以互相组合。

本发明实施例提供一种页面生成的系统,该系统可以用于页面生成的场景,例如,基于组件的页面生成的场景。页面可以为网络页面,也可以为APP中页面,本发明实施例中以APP中页面为例进行说明。

APP中各功能模块组件化,组件开发的最基本的架构可以采用MVC架构,MVC架构主要包括三个部分:M(Model)表示数据模型,V(View)表示视图,如按钮等视图控件,C(Controller)表示控制器,MVC架构中业务数据和视图控件是分离的。如图1所示,为一种MVC架构示意图。在架构中,数据模型和视图都由控制器来调度,控制器负责具体的视图展示、数据交互,例如获取视图对应的数据,把和某个视图对应的数据传递到该视图上进行展示等等。

开发方在页面开发时将页面拆分为多个楼层,各楼层对应开发方开发的组件,即初始组件,渲染后可以生成开发方开发的页面初始元素,这些页面初始元素对应楼层可以称为系统楼层。开发方开发组件后,业务方可以基于系统楼层对页面再开发,以实现个性化需求。业务方开发的组件,即为业务方组件,渲染可以实现业务方个性化的页面自定义元素,这些页面自定义元素对应的楼层可以称为业务方楼层。所以APP中页面可包括系统楼层和业务方楼层,系统楼层和业务方楼层集成,在生成页面时,两种类型的楼层动态加载、组合,即可生成业务方所需的页面,从而达到组件共建。页面本身可以看作为一个无状态的容器,各楼层可以以各种自由的组合呈现在页面上。开发方可以在组件中定义一个或多个标准接口,也就是定义了一些虚方法组合,使业务方可以基于虚拟方法开发自定义楼层,即业务方楼层,并与系统楼层进行通信,以实现个性化的需求。

目前,业务方只能实现View层的开发,来实现一些简单的需求,但是并不能在控制器和数据模型层面开发,所以对于一些如请求自定义的网络接口等属于控制器处理能力的需求无法实现,也就无法满足业务方个性化需求。

为了满足业务方需求,本发明实施例中,可以设置控制器代理,以为业务方实现通过控制器处理的个性化需求开发。具体的,本发明实施例中,组件中可以设置用于实现控制器代理的接口,以提供给业务方,业务方可以基于设置的接口开发控制器代理对象,然后将该控制器代理对象的信息传递至组件中,并通过接口调用实现控制器代理和控制器的通信,使控制器代理可以实现控制器的一些功能,如生命周期、网络请求等一系列方法的调用,从而实现业务方对业务方楼层更多需求的开发。其中,控制器中生命周期方法主要包括:页面创建init方法、页面即将被渲染viewWillAppear、页面消失viewDidDisappear方法等,网络请求可以为requestApi方法。

需要说明的是,控制器代理可以实现的方法可以基于组件提供的接口确定,具体的开发方可以基于业务方的需求设置可提供的接口,以便于业务方开发个性化需求。

本发明实施例提供了一种页面生成的方法,该方法可由页面生成系统执行,如图2所示,该方法包括:

S201:接收目标页面的页面生成请求,获取页面生成请求中的页面标识,以查询对应的控制器。

其中,页面可以为网络页面,也可以为APP中页面。页面生成请求可以为用户输入的,由图1所示架构可知,视图和数据模型均通过控制器调度,所以接收目标页面的页面生成请求后,可以先获取页面请求中页面标识,进而基于页面标识查询出对应的控制器,以执行页面生成的流程。

S202:调用控制器,创建目标页面对应的控制器代理,查询目标页面包括的系统楼层和业务方楼层。

其中,本发明实施例中,为实现业务方个性化需求,业务方基于组件提供的接口开发控制器代理,并可以将控制器代理的信息传递至组件中。所以本步骤中调用控制器后,控制器可以基于传递的控制器代理的信息创建出目标页面对应的控制器代理,本发明实施例中,创建的控制器代理与目标页面一一对应,也就是控制器代理与控制器一一对应。

具体的,业务方开发控制器代理可以为控制器代理对象,并在开发完成后通过预设的接口将控制器代理对象类名传递给到组件中,组件存储控制器代理的对象类名后,在本步骤中即可实现创建控制器代理,即创建一个具体的控制器代理实例。本步骤中调用控制器,创建所述页面对应的控制器代理,可以执行为:接收控制器代理对应的对象类名,存储对象类名,基于对象类名创建控制器代理。

需要说明的是,对于一个APP来说,其可以包括多个页面,例如,对于网络购物的APP,用户可以通过搜索某种类型的物品,进入到物品详情页面,一般情况下,在该物品详情页面内部还可以包括一些物品推荐楼层,用户通过点击这些物品推荐楼层,还可以再进入一个新的物品详情页面,所以对于一个APP来说,其包括了多个物品详情页面,但是每一个物品详情页面都是独立的。如果业务方在开发适用于物品详情页面的控制器代理对象后,直接将控制器代理对象传递给组件,该控制器代理对象会对应多个物品详情页面,开发方很难确定该控制器代理对象与哪一个页面交互和通信,而本发明实施例中,业务方在开发控制器代理对象后,可以只传递控制器代理的对象类名,并在每次页面生成时,调用控制器可以创建一个与该页面一一对应的控制器代理,从而实现该控制器代理与页面一一绑定关系,避免控制器代理与页面之间通信混乱。

本发明实施例中,各页面通过业务方和开发方共同开发,所以包括系统楼层和业务方楼层,在页面生成时可以通过调用控制器查询目标页面所包括的系统楼层和业务方楼层,目标页面可以包括至少一个系统楼层和至少一个页面楼层。具体的,可以查询出系统楼层和业务方楼层的楼层信息,如楼层标识、楼层类型、楼层属性等信息。

S203:获取系统楼层的相应数据,调用控制器代理获取业务方楼层的相应数据,以渲染系统楼层和业务方楼层,生成目标页面。

其中,系统楼层为开发方开发,其处理由控制器执行,所以本步骤调用控制器后可以获取系统楼层的相应数据,以便于系统楼层的渲染。业务方楼层为业务方开发,其处理由控制器代理执行,并且业务方楼层是基于系统楼层开发的,所以本步骤在获取系统楼层的相应数据后,可以调用控制器代理,以基于系统楼层的相应数据来获取业务方楼层的相应数据,以便于业务方楼层的渲染。系统楼层和业务方楼层渲染后即可得出生成的目标页面。

页面生成过程中,系统可以自动调度控制器的生命周期方法,例如页面创建时控制器的init方法被调用,页面即将被渲染时viewWillAppear方法被调用。由于页面中业务方楼层需要控制器代理处理,所以控制器中各方法被调用时,控制器可以同时调用控制器代理中相应的方法,以便于调用控制器代理处理业务方楼层。具体的,本发明实施例中,控制器中可以设置调用控制器代理对应的方法,例如,控制器的viewWillAppear中设置self.controllerDelegate.viewWillAppear()方法,在控制器中viewWillAppear被调用时,则可以同时调用self.controllerDelegate.viewWillAppear()方法,从而实现调用控制器代理中viewWillAppear。如此通过上述方式可以实现控制器对控制器代理中各个生命周期方法的调用,也可以实现在页面生成时业务方楼层中发起网络请求的需求,即实现了业务方获得控制器的开放能力,可以进行通过控制器处理的个性化需求的开发。

本发明实施例中,系统楼层和业务方楼层在渲染时,可以按照顺序依次渲染各楼层。具体的,对于业务方楼层,本步骤中可以获取业务方楼层的楼层信息,以确定各业务方楼层的楼层顺序,进而调用控制器代理,基于楼层顺序渲染业务方楼层。楼层信息可以从服务端获取,楼层信息可以包括楼层标识列表,基于楼层标识列表中楼层标识生成对应楼层,并通过预设字段将控制器代理赋值给各楼层,进而通过调用控制器代理,基于各楼层的相应数据依次渲染各楼层。

需要说明的是,本发明实施例中,各业务方楼层的基类中可以扩展一个属性字段,以通过此字段实现控制器代理的赋值,如此各个业务方楼层的子类中不需要再单独执行赋值处理,即可实现各业务方楼层随时与控制器代理的通信。在页面渲染中可以通过循环函数,遍历业务方楼层列表,逐一对每一个业务方楼层通过属性赋值的方式传递控制器代理,进而实现业务方楼层渲染。

本发明实施例中,在生成页面时,可以调用控制器来创建控制器代理,进而通过控制器代理来获取业务方楼层的相应数据以及对业务方楼层的渲染,从而可以通过控制器代理实现业务方如网络请求等需要控制器处理的需求,进而可以满足业务方更多个性化的开发需求。

本发明实施例中,生成的目标页面中包括系统楼层和业务方楼层,系统楼层对应的页面元素被操作时,可以调用控制器中对应的方法来处理,业务方楼层对应的页面元素被操作时,可以调用控制器代理中对应的方法来处理。具体的,目标页面中对应系统楼层的页面元素被操作后调用页面的方法可以为pageFun1,对应业务方楼层的页面元素被操作后调用页面的方法可以为self.controllerDelegate.pageFun1()。如此通过控制器代理,即可实现业务方楼层中View访问Controller的路径,即图1所示的User Action这一个链路,也就是说,属于业务方楼层的view可以实现与控制器的通信。

因此结合图1所示架构和图2所示的实施例,本发明实施例中,对在生成目标页面后,对目标页面中操作的处理过程进行具体说明,如图3所示,该方法包括:

S301:接收页面操作指令,获取页面操作指令对应的楼层数据,以确定页面操作指令对应的楼层类型。

其中,页面操作指令为用户操作目标页面后发出的,接收页面操作指令后,可以基于页面操作指令来获取对应的楼层数据。楼层数据可以包括楼层标识,本步骤中目标页面基于各楼层的相应数据生成,所以各楼层的相应数据与楼层标识之间存在对应关系,各楼层的相应数据可以包括控件位置、名称、显示内容等信息,本步骤中接收页面操作指令后,可以获取到页面操作指令对应的楼层数据,即页面操作指令对应的控件位置、名称、显示内容等信息,进而可以确定出页面操作指令对应的楼层标识。在确定出楼层标识后,可以基于楼层标识查询出页面操作指令对应的楼层类型。

本发明实施例中,楼层类型包括系统楼层和业务方楼层,系统楼层对应的页面元素被操作由控制器处理,业务方楼层对应的页面元素被操作由控制器代理处理,所以在确定出页面操作指令对应的楼层类型后,既可以确定出如何处理页面操作指令。

S302:若楼层类型为系统楼层,则将页面操作指令发送至控制器,以调用控制器处理页面操作指令。

其中,若楼层类型为系统楼层,则说明页面操作指令操作的为系统楼层对应的页面元素,即可将页面操作指令发送至控制器,以便于调用控制器处理页面操作指令。

S303:若楼层类型为业务方楼层,则将页面操作指令发送至控制器代理,以调用控制器代理处理页面操作指令。

其中,若楼层类型为业务方楼层,则说明页面操作指令操作的为业务方楼层对应的页面元素,即可将页面操作指令发送至控制器代理,以便于调用控制器代理处理页面操作指令。

需要说明的是,目标页面中包括各系统楼层和业务方楼层,但是楼层之间通常并不是相互独立的,是可以进行通信的。例如,点击楼层A,可以触发楼层B的某一个动作,如楼层A中控件被操作后,楼层B中播放的视频停止播放。系统楼层中楼层之间交互通过控制器来处理,而业务楼层中楼层之间交互则可以通过控制器代理来处理。

所以本步骤中,页面操作指令具体可以包括楼层交互指令,也就是页面操作指令执行时需要楼层之间通信,此时,本步骤可以执行为:调用控制器代理,查询页面操作指令对应的目标楼层标识,获取目标楼层标识对应目标楼层的相应数据,以基于页面操作指令进行更新,渲染更新后的目标楼层。

其中,目标楼层标识即为需要与页面操作指令所在楼层交互的楼层的标识,调用控制器代理可以获取目标楼层标识对应目标楼层的相应数据,然后可以基于目标楼层的相应数据,通过调用对应的方法对目标楼层的相应数据更新,并进行渲染,以实现目标页面中目标楼层的页面元素随着页面操作指令更新。

以接收目标页面中楼层A的页面操作指令,触发楼层B中对应操作为例,在控制器代理中楼层A的页面操作指令对应方法可以为floorAHandler,floorAHandler中可以设置getFloorWithUniqueId方法以获取UniqueId对应楼层的相应数据,即通过此方法调用楼层B的相应数据,然后调用楼层B对应的方法(如functionResFloorAClick)以更新楼层B的相应数据,从而实现楼层A到楼层B之间的通信。

需要说明的是,控制器代理并不能完全等同于控制器,所以控制器代理并不能实现控制器的全部功能,对于一些控制器代理无法实现的功能,本发明实施例中可以设置对应的接口,以使控制器代理通过预设的方法调用这些接口将不能实现的功能转换至控制器中实现。所以本步骤中调用所述控制器代理处理所述页面操作指令,还可以具体执行为:调用控制器代理,通过预设接口将页面操作指令发送至控制器,以调用控制器处理页面操作指令。

例如,在控制器中通过getFloorWithUniqueId方法,可以实现获取到楼层标识UniqueId对应的楼层实例,也就是该楼层标识UniqueId的相应数据,所以本发明实施例中,在控制器代理中可以添加self.realController.getFloorWithUniqueId方法,在需要楼层之间通信时,可以调用此方法,将页面操作指令发送至控制器中,以获取目标楼层标识对应目标楼层的相应数据,并基于页面操作指令进行目标楼层的相应数据更新。

需要说明的是,楼层之间的通信还可以包括对多个楼层的相应数据更新的场景,例如设置所有楼层的背景颜色。此时,控制器代理可以通过上述方式批量获取各楼层的相应数据,然后依次对各楼层的相应数据进行更新。通过上述过程即可实现楼层之间的通信,即通过这一步,我们可以看到我们打通了View和View的交互、Controller和View的交互等,从而可以满足业务方的个性化开发需求。

本发明实施例中,通过控制器代理可以实现不同楼层之间的通信,从而可以实现业务方更多的个性化需求。

本发明实施例中,由于创建了控制器代理,使业务方可以基于控制器代理实现一些控制器的功能,所以业务方还可以设置数据模型,以通过数据模型来存储和解析业务方楼层的相应数据。如此在页面生成时,获取业务方楼层的相应数据具体可以执行为:调用控制器代理,查询业务方楼层对应的数据模型,以从数据模型中获取业务方楼层的相应数据。

例如,业务方可以在业务方楼层中发起网络请求,并开发对应的数据模型,如此在网络请求返回时,可以使用对应的数据模型解析和存储网络请求返回的数据,并在页面生成时,即可调用控制器代理从数据模型中获取网络请求对应的数据。

通过上述过程,业务方相当于打通了图1中的Controller和Model之间的链路,并且由于各业务方楼层均可以调用控制器代理,所以业务方楼层的相应数据均可以调用控制器代理获取到对应的数据模型解析,而不需要各楼层单独解析。例如,业务楼层A中通过网络接口API1下发的字段x时,可以通过self.controllerDelegate.modelA.x调用控制器代理,以获取对应的数据。如此通过调用控制器代理从数据模型中获取数据,不仅可以实现数据模型复用,还解决了业务方楼层重复开发、难以维护、内存消耗大等问题。

本发明实施例中,通过控制器代理,可以实现页面中控制器和控制器代理一一对应,并通过生命周期等方法的调用等技术手段,彻底打通了业务楼层中图1架构的M-V-C三个角色之间通信链路,如此不仅仅能提供业务方开放自定义楼层的能力,也就实现业务方在View层面、Contoller层面和数据模型Model层面的开发,使开发方能够处理全局和局部的双重问题,业务方也可以实现很多之前无法完成的开发需求,进一步的开放组件的扩展能力。

为了解决现有技术存在的问题,本发明实施例提供了一种页面生成的装置400,如图4所示,该装置400包括:

接收单元401,用于接收目标页面的页面生成请求,获取所述页面生成请求中的页面标识,以查询对应的控制器;

创建单元402,用于调用所述控制器,创建所述目标页面对应的控制器代理,查询所述页面包括的系统楼层和业务方楼层;

生成单元403,用于获取所述系统楼层的相应数据,调用所述控制器代理获取所述业务方楼层的相应数据,以渲染所述系统楼层和所述业务方楼层,生成所述目标页面。

应理解的是,实施本发明实施例的方式与实施图2所示实施例的方式相同,在此不再赘述。

本发明实施例的一种实现方式中,所述生成单元403,具体用于:

调用所述控制器代理,查询所述业务方楼层对应的数据模型,以从所述数据模型中获取所述业务方楼层的相应数据。

本发明实施例的又一种实现方式中,所述接收单元401,还用于接收页面操作指令,获取所述页面操作指令对应的楼层数据,以确定所述页面操作指令对应的楼层类型;

所述装置400还包括:

处理单元,用于若所述楼层类型为所述系统楼层,则将所述页面操作指令发送至所述控制器,以调用所述控制器处理所述页面操作指令;若所述楼层类型为所述业务方楼层,则将所述页面操作指令发送至所述控制器代理,以调用所述控制器代理处理所述页面操作指令。

本发明实施例的又一种实现方式中,所述处理单元,具体用于:

调用所述控制器代理,查询所述页面操作指令对应的目标楼层标识,获取所述目标楼层标识对应目标楼层的相应数据,以基于所述页面操作指令进行更新,渲染更新后的目标楼层。

本发明实施例的又一种实现方式中,所述处理单元,具体用于:

调用所述控制器代理,通过预设接口将所述页面操作指令发送至所述控制器,以调用所述控制器处理所述页面操作指令。

本发明实施例的又一种实现方式中,所述生成单元403,具体用于:

获取所述业务方楼层的楼层信息,以确定所述业务方楼层的楼层顺序;

调用所述控制器代理,基于所述楼层顺序,渲染所述业务方楼层。

本发明实施例的又一种实现方式中,所述创建单元402,具体用于:

接收所述控制器代理对应的对象类名,存储所述对象类名,以基于所述对象类名创建所述控制器代理。

应理解的是,实施本发明实施例的方式与实施图2或图3所示实施例的方式相同,在此不再赘述。

本发明实施例中,在生成页面时,可以调用控制器来创建控制器代理,进而通过控制器代理来获取业务方楼层的相应数据以及对业务方楼层的渲染,从而可以通过控制器代理实现业务方如网络请求等需要控制器处理的需求,进而可以满足业务方更多个性化的开发需求。

根据本发明的实施例,本发明实施例还提供了一种电子设备和一种可读存储介质。

本发明实施例的电子设备包括:至少一个处理器;以及,与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器执行本发明实施例所提供的页面生成的方法。

图5示出了可以应用本发明实施例的页面生成的方法或页面生成的装置的示例性系统架构500。

如图5所示,系统架构500可以包括终端设备501、502、503,网络504和服务器505。网络504用以在终端设备501、502、503和服务器505之间提供通信链路的介质。网络504可以包括各种连接类型,例如有线、无线通信链路或者光纤电缆等等。

用户可以使用终端设备501、502、503通过网络504与服务器505交互,以接收或发送消息等。终端设备501、502、503上可以安装有各种客户端应用。

终端设备501、502、503可以是但不限于智能手机、平板电脑、膝上型便携计算机和台式计算机等等。

服务器505可以是提供各种服务的服务器,服务器可以对接收到的楼层信息查询请求等数据进行分析等处理,并将处理结果(例如楼层信息--仅为示例)反馈给终端设备。

需要说明的是,本发明实施例所提供的页面生成的方法一般由服务器505执行,相应地,页面生成的装置一般设置于服务器505中。

应该理解,图5中的终端设备、网络和服务器的数目仅仅是示意性的。根据实现需要,可以具有任意数目的终端设备、网络和服务器。

下面参考图6,其示出了适于用来实现本发明实施例的计算机系统600的结构示意图。图6示出的计算机系统仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。

如图6所示,计算机系统600包括中央处理单元(CPU)601,其可以根据存储在只读存储器(ROM)602中的程序或者从存储部分608加载到随机访问存储器(RAM)603中的程序而执行各种适当的动作和处理。在RAM 603中,还存储有系统600操作所需的各种程序和数据。CPU 601、ROM 602以及RAM 603通过总线604彼此相连。输入/输出(I/O)接口605也连接至总线604。

以下部件连接至I/O接口605:包括键盘、鼠标等的输入部分606;包括诸如阴极射线管(CRT)、液晶显示器(LCD)等以及扬声器等的输出部分607;包括硬盘等的存储部分608;以及包括诸如LAN卡、调制解调器等的网络接口卡的通信部分609。通信部分609经由诸如因特网的网络执行通信处理。驱动器610也根据需要连接至I/O接口605。可拆卸介质611,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器610上,以便于从其上读出的计算机程序根据需要被安装入存储部分608。

特别地,根据本发明公开的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本发明公开的实施例包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信部分609从网络上被下载和安装,和/或从可拆卸介质611被安装。在该计算机程序被中央处理单元(CPU)601执行时,执行本发明的系统中限定的上述功能。

需要说明的是,本发明所示的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本发明中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本发明中,计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:无线、电线、光缆、RF等等,或者上述的任意合适的组合。

附图中的流程图和框图,图示了按照本发明各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个单元、程序段、或代码的一部分,上述单元、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图或流程图中的每个方框、以及框图或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。

描述于本发明实施例中所涉及到的单元可以通过软件的方式实现,也可以通过硬件的方式来实现。所描述的单元也可以设置在处理器中,例如,可以描述为:一种处理器包括接收单元、创建单元和生成单元。其中,这些单元的名称在某种情况下并不构成对该单元本身的限定,例如,接收单元还可以被描述为“接收单元的功能的单元”。

作为另一方面,本发明还提供了一种计算机可读介质,该计算机可读介质可以是上述实施例中描述的设备中所包含的;也可以是单独存在,而未装配入该设备中。上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被一个该设备执行时,使得该设备执行本发明所提供的页面生成的方法。

上述具体实施方式,并不构成对本发明保护范围的限制。本领域技术人员应该明白的是,取决于设计要求和其他因素,可以发生各种各样的修改、组合、子组合和替代。任何在本发明的精神和原则之内所作的修改、等同替换和改进等,均应包含在本发明保护范围之内。

相关技术
  • 一种页面生成方法、页面生成系统、存储介质和电子设备
  • 页面生成方法、页面生成设备、存储介质及装置
技术分类

06120113212304