什么是GWT的Entry Point
2023-07-06
Entry Point可以理解为gwt对界面上不同模块部分的封装,比如一个web界面有两个主要的部分,一个部分是实时显示内容的告示区域,一个部分是留言的区域,那个就可以定义两个Entry Point,分别处理这两个界面部分,每个Entry Point是一个Java代码,这样不同功能、不一样的界面模块就可以分别写到不同的java代码中去了,当然你也可以把整个页面都定义在一个Entry Point里面去,那这个java代码里既要处理显示实时告示的逻辑,又要处理留言的逻辑,代码就很混杂,这就像现在的用php来整个定义一个页面一样,Entry Point的定义在Module中通过 指定。
那么这个Entry Point显示在那个地方呢?
这不是Entry Point处理的内容,Entry Point只表示一个页面会分成几个不同功能的模块及负责这些模块的java类,甚至实际的界面会显示在什么地方由java类里面定义布局的代码定义。这里每个Module都有一个html页面,该页面负责加载最终gwt编译的javascript代码及ui,那么在这个html里面我们就可以定义一个布局显示的模板构架。定义好哪里要显示什么,比如:
那就可以定义两个Entry Point一个负责BBS,一个负责Message,然后在BBS的java代码里通过
RootPanel.get(”bbs”).add(”负责bbs的布局定义”);
RootPanel.get(”message”).add(”负责Message的布局定义”);
RootPanel.get(”bbs”).add(”负责bbs的布局定义”);
RootPanel.get(”message”).add(”负责Message的布局定义”);
把两个不同的功能代码放到我们预定义的地方,如果RootPanel.get().add(”布局定义”);则加取页面的最后。
EntryPoint的EntryPoint.onModuleLoad()方法就是负责定义界面的地方,相当于RCP IViewPart的createPartControl