Portlet 和 Servlet 算是兄弟有那么一点点相似却又有那么一点点不同,因为 Servlet 和 Portlet 不尽然相同,所以研究小組決定将 portlets 定义成为一个新的组件,因此定义了 portlets 一个新的并且明确的界面与行为。为了尽可能与现有的 servlet 结合达到重复使用的目的,portlet 的规范利用了 servlet 的规范,许多观念都很相似的,结合 portlets、servlets 及 jsp 在同一个网站系统中,我们称为 portlet application 。在同一个 portlet application 中,他们将分享同一个 classloader,context 及 session。 1) Portlet 和 Servlet 的相似之处 @ portlets 也是 Java 技术的 web 组件 @ portlets 也是有特定的 container 在管理 @ portlets 可以动态产生各种内容 @ portlets 的生命周期由 container 所管理 @ portlets 和客户端的互动是通过 request/response 的机制 2) Portlet 和 Servlet 也有一些不同 @ portlets 只产生 markup 信息片段,不是完整的网页文件。而 Portal 会将所有的 Portlet markup 信息片段放到一个完整的 Portal 网页。 @ portlets 不会和 URL 有直接的关系 @ 客户端必须通过 portal 系统才能和 portlets 互动 @ portlets 有一些定义好的 request 处理,action request 以及 render request。 @ portlets 默认定义 portlet modes 及窗口状态可以指出在网页中该 portlet 的哪个功能正在执行及现在的 状态。 @ portlets 可以在同一个 portal 网页之中存在多个。 3) Portlet 有一些附加的功能是 Servlet 所没有的 @ Portlets 能够存取及储存永久配置文件及定制资料。 @ portlets 可以存取使用者数据 @ portlets 具有 URL 的重写功能在文件中去动态建立连结,允许 portal server 不用去知道如何在网页的片 段之中建立连结及动作。 @ portlets 可以储存临时性的数据在 portlet session 之中,拥有两个不同的范围: application-wide scope 及 portlet private scope 。 4) Portlet 不具有一些功能, 但是 Servlet 却有提供 @ servlet 具有设置输出的文字编码( character set encoding)方式 @ servlet 可以设置 HTTP 输出的 header @ servlet 才能够接收客户对于 portal 发出的 URL 请求 |
portlet 与 servlet 的关系
最新推荐文章于 2021-03-13 17:02:45 发布