创建基于wicket的web项目(三)-数据绑定

来源:互联网 发布:淘宝售后服务是指 编辑:程序博客网 时间:2024/05/21 08:50
wicket是一个java web框架,用html描述ui,并将具有特殊标记的html元素定义为ui控件,在java类中通过操作这些ui控件以控制其输出行为和样式等.
下面通过一个项目实例来简单学习一下wicket中的数据绑定.
1.创建名称为wicket-demo的web项目,并导入必须的jar包.
2.创建java类,直接看代码UserDisplay.java.
  在java类中,UserDisplay的构造方法接收一个User,User被转换成了界面需要的数据Model UserDisplayModel,同时通过如下代码
  Form<UserDisplayModel> form = new Form<UserDisplayModel>("form", new CompoundPropertyModel<UserDisplayModel>(userDisplayModel));
  将UserDisplayModel绑定到了Form控件上.注意:Form表单下的子控件的id如果正好为UserDisplayModel中的属性,那么wicket会将UserDisplayModel
  中此属性的数据绑定到此控件上.
3.创建html模板,直接看代码UserDisplay.html.
4.创建Application的实现类.
  通过Application类中的getHomePage方法可以定义用户请求时的默认页面,直接看代码WicketApplication.
  在WicketApplication类中,通过getConfigurationType方法设置了项目的运行状态为开发模式.
5.配置web.xml,在web.xml文件中为wicket的入口配置映射,其实wicket就像struts一样,通过filter截获请求,
  然后将截获的请求交给Application的实现类处理,从而跳转到Application实现类里配置的默认页面.
6.完成上面的步骤后,部署wicket-demo项目并启动,就可以通过http://127.0.0.1:8080/wicket-demo/w/ 地址访问了.
  在填写完简历后,点击save按钮,通过setResponsePage(new UserDisplay(user));跳到他页面.
注意:因为我们的User中的字段和User展示页面上的控件不是一一对应的关系,所以我们通常需要在页面和实体之间再加一层model,
用来实现从页面控件到实体,从实体到页面控件之间的转换.









0 0
原创粉丝点击