Wicket用户手册一:Wicket介绍篇

Wicket用户手册

这是一份还有待完成的Wicket用户手册,目前主要在Wiki上发布,以后可能会以PDF或者HTML格式提供文档。

什么是wicket

在Java世界中,有许多Web开发框架,Wicket就是最近出现的一个新框架,但Wicket并不仅仅只是一个重复发明的轮子。正如牛顿所说,“他站在巨人的肩上”,Wicket也借鉴了许多框架的优点,是一个基于组件开发的框架。与早期的一些WEB框架相比较,Wicket使得Web开发更加简单,方便。与其它Web框架一样,Wicket也建立在Sun’s servlet API;但是与Struts和Spring那种MVC框架不同,因为使用Wicket的开发者,所关心的已经不再如何从客户端接收一个回复又或者如何向客户端发送一个请求。以往的框架往往提供一个Controller同时为多用户和多线程服务,负责处理请求及回复,不需要保存各种状态。但Wicket为用户提供了带有状态的各种组件。Wicket不再创建一个Controller,而是使用一个页面,并在上面放置各种控件,并定义控件如何响应用户的输入。

听起来,这和开发桌面的GUI程序没有区别,象使用 Microsoft的VB,SUN的Swing,Borland的Delphi一样。使用控件可以使得可视化层更加容易开发,把更多时间花在业务或者其它核心功能上。更重要的是,这也让基于控件的GUI更加容易扩展。只需要通过添加相应的控件即可为系统添加更多的功能,而且不会影响到其它控件。这种基于控件开发的优势也同样可以用于Web开发,事实上许多Web框架都试图将桌面程序开发的优势移植到Web开发中。Apache Jakarta小组的Tapestry项目和Microsoft’s的ASP.NET,以及Sun’s JSF(Java Server Faces)标准都是佼佼者,Wicket也从它们中获益良多。目前这种技术象是一个模子刻出来的,通过一个模板文件来描述页面布局。 JSF使用了Sun的JSP技术(还有标签), ASP.NET则使用了ASP,而Tapestry则在标准的HTML基础上定义自己的模板系统。(译注:其实这几种技术有些不同,象ASP.NET则把模板文件当成可执行文件,继承一个Page,然后编译。JSF则把JSP编译成Servlet,它们事实上都是可以执行的,面Tapestry和Wicket则是将HTML和代码分开,用后台类动态输出信息来替换HTML模板中的指定内容),当收到用户请求时,这些页面负责输出,同时调用后台对象动态输出时所需要的内容。 后台支持类往往是以Listener的方式出现的,而模板仅仅只定义控件的相关信息,如位置,类型等信息。

这种方式是对MVC2结构的一个改进。开发人员可以定义各种方法而不是使用一个统一而庞大的类而处理系统。通常的MVC2结构的框架,都是无状态的,通过Wicket,开发人员不再管理状态。现在编写Java代码已经成为二等公民了,因为这些Java代码只需要提供页面输出时所需要的信息就可以了。(译注:这句话觉得怎么翻译都觉得古怪)。另外这些后台类对请求<--->回复时会收到通知(通过上面的Listener接口)。(译注:这里少翻译了一段,因为怎么翻译这一段都比较别扭,还好这一段影响不大,所以暂时忽略了,以后有时间再补上)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
目录 1.简介 2.如何使用示例代码 3.我为什么要学习Wicket? 3.1。我们都喜欢意大利面:-) ... 3.2。面向组件的框架 - 概述 3.3。面向组件的Web开发框架的优点 3.4。Wicket与其他面向组件的框架相比 威克特说“你好世界!” 4.1。Wicket分发和模块 4.2。Wicket应用程序的配置 4.3。HomePage类 4.4。Wicket链接 4.5。摘要 5. Wicket作为页面布局管理器 5.1。页眉,页脚,左侧菜单,内容等... 5.2。这是继承! 5.3。划分et impera! 5.4。使用wicket标记继承:扩展标记 5.5。摘要 6.保持对HTML的控制 6.1。隐藏或禁用组件 6.2。修改标签属性 6.3。生成标记属性“id” 6.4。使用WebMarkupContainer创建内嵌面板 6.5。使用标记片段 6.6。将标题内容添加到最终页面 6.7。在我们的页面/面板中使用存根标记 6.8。如何仅渲染组件主体 6.9。用wicket隐藏装饰元素:enclosure标签 6.10。使用Border包围现有标记 6.11。摘要 7.组件生命周期 7.1。组件的生命周期阶段 7.2。组件生命周期的钩子方法 7.3。初始化阶段 7.4。渲染阶段 7.5。删除阶段 7.6。独立舞台 7.7。摘要 8.页面版本控制和缓存 8.1。有状态页面与无状态页面 8.2。有状态页面 8.3。无状态页面 8.4。摘要 9.在请求处理的引擎盖下 9.1。类应用和请求处理 9.2。请求和响应类 9.3。请求处理的“主管” - RequestCycle 9.4。会话类 9.5。异常处理 9.6。摘要 10. Wicket链接和URL生成 10.1。PageParameters 10.2。可收藏的链接 10.3。使用标记wicket自动创建可收藏的链接:链接 10.4。外部链接 10.5。无状态链接 10.6。生成结构清晰的URL 10.7。摘要 11. Wicket模型和表格 11.1。什么是模特? 11.2。IModel和Lambda 11.3。模型和JavaBeans 11.4。Wicket形式 11.5。组件DropDownChoice 11.6。模型链 11.7。可拆卸型号 11.8。在组件中使用多个模型 11.9。使用型号! 11.10。摘要 12. Wicket详细说明 12.1。默认表单处理 12.2。表单验证和反馈消息 12.3。输入值转换 12.4。使用JSR 303验证 12.5。使用IFormSubmittingComponent提交表单 12.6。嵌套表格 12.7。多行文字输入 12.8。上传文件 12.9。使用FormComponentPanel创建复杂的表单组件 12.10。无国籍形式 12.11。使用单选按钮和复选框 12.12。使用ListMultipleChoices和Palette选择多个值 12.13。摘要 13.使用中继器显示多个项目 13.1。RepeatingView组件 13.2。ListView组件 13.3。RefreshingView组件 13.4。可分页的中继器 13.5。摘要 14.组件排队 14.1。标记层次结构和代码 14.2。改进了汽车组件 14.3。组件什么时候出列? 14.4。排队的限制 14.5。摘要 15.与Wicket的国际化 15.1。本土化 15.2。Wicket的本地化 15.3。捆绑查找算法 15.4。组件选择的本地化 15.5。国际化和模型 15.6。摘要 16. Wicket的资源管理 16.1。静态与动态资源 16.2。资源参考 16.3。包资源 16.4。向页眉部分添加资源 16.5。上下文相关资源 16.6。资源依赖性 16.7。使用资源包聚合多个资源 16.8。将JavaScript放在页面正文中 16.9。标题贡献者定位 16.10。自定义资源 16.11。安装资源 16.12。Lambda支持 16.13。共享资源 16.14。自定义资源加载 16.15。CssHeaderItem和JavaScriptHeaderItem压缩 16.16。NIO资源 16.17。资源通过模型得出 16.18。摘要 17.与JavaScript集成的示例 17.1。我们想做什么...... 17.2。......以及我们将如何做到这一点 17.3。摘要 18. Wicket高级主题 18.1。通过行为丰富组件 19.使用AJAX 19.1。如何使用AJAX组件和行为 19.2。内置AJAX组件 19.3。内置的AJAX行为 19.4。使用活动指示器 19.5。AJAX请求属性和调用侦听器 19.6。创建自定义AJAX调用侦

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值