`
dengyin2000
  • 浏览: 1223705 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

GWT中有没有Model的概念呀(就是可以绑定textField的值到某个对象)

    博客分类:
  • gwt
阅读更多
如果我有个domain 对象有许多的property,如果每个property都需要去手工设值的话, 就太多代码了。

有没有form validator 这些东西?  在网上找了很久 没有找到相关的东西。 看了这个组件FormPanel 但是好像也是完成一般的传Name Value Pair到servlet而已。
分享到:
评论
17 楼 stone 2007-11-06  
fx组件么?你看一下mygwt的实现就可以了,如果你对js+css非常熟悉,看那些java代码要舒服得多了
16 楼 zhaoxin 2007-11-05  
dengyin2000 写道
loveyeah 写道
粗粗地看了一下你的MYGWT
的确,在整合EXT方面做的很好
下一步,很希望能看到你对EXT更多的整合,如grid和form方面


Sorry, MyGWT 不是我的, 我还没有这么强的造诣。 小弟不才。

小弟只是发布了一个GWT Model的项目http://code.google.com/p/gwt-model/

不知谁对 fx组件有所了解一起讨论一下。它是实现组件的淡入淡出效果。很酷 ,类似effects.
15 楼 dengyin2000 2007-10-29  
loveyeah 写道
粗粗地看了一下你的MYGWT
的确,在整合EXT方面做的很好
下一步,很希望能看到你对EXT更多的整合,如grid和form方面


Sorry, MyGWT 不是我的, 我还没有这么强的造诣。 小弟不才。

小弟只是发布了一个GWT Model的项目http://code.google.com/p/gwt-model/
14 楼 loveyeah 2007-10-29  
粗粗地看了一下你的MYGWT
的确,在整合EXT方面做的很好
下一步,很希望能看到你对EXT更多的整合,如grid和form方面
13 楼 dengyin2000 2007-10-29  
我在google code中发布了gwt model项目。具体请看http://www.iteye.com/news/194
12 楼 stone 2007-10-19  
extjs我没有仔细研究过,对mygwt只是粗略的看了一下。抛开mygwt那漂亮的界面,我想谈一下它的model的实现。关于model,mygwt实现的非常好,对model实现了insert,add,update and delete 事件的监听,通过这些event的监听,将会触发一个通知ui的notify动作,ui被通知后,将对应的展示的数据作了相应的改变,然后又触发ui变化的的监听,通知那些ui listener作其他的处理.
概括来说,就是一个真正的在客户端的MVC的实现.
但不幸得是,mygwt只是提供了这些类使开发者组装,没有在提供的组件内部内置mvc的管理,而一个mvc的组件的组装过程也是麻烦而讨厌的.
11 楼 dengyin2000 2007-10-18  
stone 写道
dengyin2000 写道


可以看看MyGWT这个纺extjs的gwt widgets。 http://www.iteye.com/topic/132893

这个应该能让gwt开发的东西更漂亮。


让gwt的组件漂亮一些,我想这个对于我们这样的非美工开发者来说可以会将更多的注意力放在gwt的组件交互,或者人机交互,以及和后台的业务逻辑交互,但真正的开发时的难点也就在于这些交互。
现在有很多的将一些不错的js框架转化成gwt的组件的,比如:
http://code.google.com/p/gwtwindowmanager/
http://code.google.com/p/gwt-yui-ext/
但其根本也就是将以前的js组件换成了现在的java组件,关于数据的传输、组装、邦定都没有涉及,没有充分利用gwt的java特性


MyGWT 这个东西跟gwt-yui-ext不太一样。gwt-yui-ext其实还是ext  gwt只是再做层包装调用而已。 而MyGWT他是真正的gwt widget 没有用ext的代码。 他是模仿ext,完全用gwt实现。 MyGwt也是刚出来的一个项目。 不知道会不会把ext里面data的概念也实现。
10 楼 stone 2007-10-18  
dengyin2000 写道


可以看看MyGWT这个纺extjs的gwt widgets。 http://www.iteye.com/topic/132893

这个应该能让gwt开发的东西更漂亮。


让gwt的组件漂亮一些,我想这个对于我们这样的非美工开发者来说可以会将更多的注意力放在gwt的组件交互,或者人机交互,以及和后台的业务逻辑交互,但真正的开发时的难点也就在于这些交互。
现在有很多的将一些不错的js框架转化成gwt的组件的,比如:
http://code.google.com/p/gwtwindowmanager/
http://code.google.com/p/gwt-yui-ext/
但其根本也就是将以前的js组件换成了现在的java组件,关于数据的传输、组装、邦定都没有涉及,没有充分利用gwt的java特性
9 楼 dengyin2000 2007-10-17  
stone 写道
怎么说gwt呢?确实如他的定义一样,只是一个工具,对java程序员来说只是一种玩js的工具。但如果真正的使用gwt编写一个应用,还有待一个完整的gwt框架。gwt是提供了很多组件,java程序员可以使用这些组件直接编写可交互的web ui的东东,但真正用于app的开发时,这些组件就有些捉襟见肘,而且css的定义,event的处理,都要提到一个高的层次来。


可以看看MyGWT这个纺extjs的gwt widgets。 http://www.iteye.com/topic/132893

这个应该能让gwt开发的东西更漂亮。
8 楼 dengyin2000 2007-10-17  
stone 写道
怎么说gwt呢?确实如他的定义一样,只是一个工具,对java程序员来说只是一种玩js的工具。但如果真正的使用gwt编写一个应用,还有待一个完整的gwt框架。gwt是提供了很多组件,java程序员可以使用这些组件直接编写可交互的web ui的东东,但真正用于app的开发时,这些组件就有些捉襟见肘,而且css的定义,event的处理,都要提到一个高的层次来。


对于gwt的UI, 我确实感觉比直接用html更不爽。 gwt基本上都是用css来控制样式,对于我这种对css感知能力不是很强的人来说,就不太好控制gwt的UI。而且现在的美工都是先画页面原型。这样要apply到gwt上的话,又要多做许多工作。


对于gwt的event机制感觉还是不错的。 这点上基本上跟Swing的事件机制差不多。 就是要注意sink你想要的事件。

对于gwt的model, 昨天晚上想了一下。 我希望能做到下面的代码这样。

Model pModel = new Model(new Person());   //model的构造函数中进行PersonWrapper的构造和封装。

PopulateForm pf = new PopulateForm(submitButton);

pf.addBinding(new BTextBox(pModel, "firstName"));
pf.addBinding(new BTextBox(pModel, "address"));
pf.addBinding(new BTextBox(pModel, "age"));

//Ok, 当我点了submitButton之前。 Person的firstName address age属性都populate到Person对象上了。

现在那篇文章都是正对TextBox, 我没有可以让Wrapper的接口的getAttribute返回Object。 还有可以获取嵌套的对象的属性。如:  new BTextBox(pModel, "contect.address"0) 等等。



7 楼 stone 2007-10-17  
怎么说gwt呢?确实如他的定义一样,只是一个工具,对java程序员来说只是一种玩js的工具。但如果真正的使用gwt编写一个应用,还有待一个完整的gwt框架。gwt是提供了很多组件,java程序员可以使用这些组件直接编写可交互的web ui的东东,但真正用于app的开发时,这些组件就有些捉襟见肘,而且css的定义,event的处理,都要提到一个高的层次来。
6 楼 dengyin2000 2007-10-16  
谢谢  stone.提供这样一篇这样精彩的文章。 http://www.zenika.com/blog/2007/08/03/gwt-data-binding-english-version/

这篇文章里面的实现确实很棒。 其实这篇文章里面的例子还有很多改进和丰富的地方。我们甚至可以把这个做成一个gwt的databinding  的项目。使得gwt也可以有像tapestry, Wicket的model databinding的东西。
5 楼 dengyin2000 2007-10-16  
stone 写道
对于model的实现,其实关键在于model的值如何和组件对应上的实现上面,关于这一点可以参考网址http://www.zenika.com/blog/2007/08/03/gwt-data-binding-english-version/
上面介绍了一种如何在gwt中将一个bean的属性邦定到gwt组件的一个简单实现。
其实难点在于reflection上面,gwt不支持反射。在上面的网址下载代码分析可知,它是动态的生成了一个wrapper类,用来访问邦定bean的属性。


不错。 这位兄弟有用gwt做过项目吗? 我只是对gwt有些关注。 model这个概念竟然没有。回去看看这篇文章。


4 楼 stone 2007-10-16  
对于model的实现,其实关键在于model的值如何和组件对应上的实现上面,关于这一点可以参考网址http://www.zenika.com/blog/2007/08/03/gwt-data-binding-english-version/
上面介绍了一种如何在gwt中将一个bean的属性邦定到gwt组件的一个简单实现。
其实难点在于reflection上面,gwt不支持反射。在上面的网址下载代码分析可知,它是动态的生成了一个wrapper类,用来访问邦定bean的属性。
3 楼 dengyin2000 2007-10-16  
恩。  我也觉得这快上gwt上是空白。 如果对于很多field的话。 你需要很多代码来装配。 如果有个model的概念的话。 会方便不少。 不过可能gwt本来就不合适做这种大量的crud的工作。 这种工作可能用传统的web框架更好。

PS: 二楼兄弟的照片是不是太××××××了       
2 楼 stone 2007-10-16  
gwt有一个相关的validator的项目,在code.google.com上
关于model,gwt没有提供,只有自己扩展了
1 楼 yongyuan.jiang 2007-10-12  
开发一个Form组件与valida listener,能够匹配正则表达式,通过按钮onclick事件触发该listener。

相关推荐

    GWT入门 GWT中文教程

    总的来说,这个压缩包提供了一个全面的GWT学习路径,从基础的GWT使用到EXT-GWT的组件开发,再到快速开发技巧,覆盖了GWT开发的各个方面。通过深入学习和实践其中的内容,开发者可以有效地掌握GWT技术,开发出高性能...

    GWT中文教程(入门进阶)

    4. **事件处理**:GWT中的事件模型基于DOM事件,你可以为Widget绑定事件监听器,处理用户交互。 5. **CSS样式**:GWT支持内联CSS和外部CSS样式表,可以通过Java代码动态修改样式,实现富客户端界面的定制。 6. **...

    Gwt中文手册,GWt入门

    Gwt中文手册,GWt入门Gwt中文手册,GWt入门Gwt中文手册,GWt入门

    GWT中的xmlHttpRequest

    GWT提供了对XHR的封装,使得开发者可以方便地使用JavaScript的XMLHttpRequest对象,而无需直接接触底层的JavaScript代码。在《GWT揭秘》一书的8.1节中,详细讲解了如何在GWT中使用XMLHttpRequest来请求动态数据。本...

    GWT入门和进阶

    GWT允许开发者使用Java语言编写代码,然后自动编译为优化过的JavaScript,使得开发者能够利用Java的强大功能同时享受到JavaScript在Web端的广泛支持。 ### GWT入门 **1. 安装与配置** 首先,你需要下载GWT SDK,并...

    gwt 练习 gwt学习

    这个“gwt 练习 gwt学习”项目可能是为了帮助用户熟悉GWT的基本概念、开发流程和最佳实践。 在GWT的实践中,"StockWatcher"是一个经典的入门示例,它通常用来教授GWT的基础知识。StockWatcher应用会模拟一个股票...

    GWT中文教程 .

    EXT-GWT2.0.1+API+DOC Gwt-Ext基础-中级-进阶GWT中文教程

    gwt 中实现简单的树状菜单

    在GWT(Google Web Toolkit)中,实现一个简单的树状菜单是常见的需求,尤其是在构建具有层级结构的数据展示或导航功能的Web应用时。GWT提供了一套完整的UI组件库,其中包括Tree和TreeItem类,可以帮助我们轻松创建...

    gwt入门项目代码

    5. **API的使用**:在代码中查找GWT和GXT的API用法,例如数据绑定、异步通信(RPC服务)、UI布局管理、表单控件等。 6. **Widget编程**:GWT中的Widget是构建用户界面的基本元素,了解如何创建和操作Widget,以及...

    GWT

    通常,这样的设计可能涉及到如何优雅地组织GWT代码结构、实现可重用的组件或遵循特定的设计原则,如MVP(Model-View-Presenter)模式,用于分离视图逻辑和业务逻辑。 标签“源码”和“工具”表明这篇博客可能探讨了...

    GWT DEMO 增删改查

    在GWT中,可以通过选中`DataGrid`中的行来获取要修改的记录,然后弹出一个编辑对话框,利用`FormPanel`或`VerticalPanel`显示可编辑的字段。用户修改后,再次通过RPC调用更新服务器上的数据。 4. **删除(Delete)*...

    SmartGwt学习文档

    在SmartGwt的学习过程中,首先需要理解GWT的基本概念。GWT是一个开源工具,允许开发者使用Java语言编写前端代码,然后自动编译为高效的JavaScript。GWT提供了编译器、API和开发工具,使得开发者可以在Java环境中进行...

    gwt入门-gwt从这里开始

    - **Hosted Model**:在开发过程中,GWT 提供了 Hosted Mode,它模拟一个浏览器环境,让开发者可以直接在 Java 虚拟机上运行和调试 Java 代码,无需每次都编译成 JavaScript。这种方式提高了开发效率,便于调试。 ...

    GWT入门与经典实例解析源码

    通过实例解析源码,你可以看到这些概念如何在实际项目中应用,例如创建一个简单的登录注册系统、实现数据表格的动态加载、构建一个基于GWT的电子商务应用等。这些实例将帮助你更好地理解和掌握GWT的各个层面,从基础...

    gwt学习资料和实例项目

    读者可以从中学习到如何将Java的强类型、面向对象特性应用于Web开发,同时理解GWT如何将Java代码转换为运行在浏览器上的JavaScript代码。 **Tutorial-Contacts.zip** 这个压缩包很可能包含了一个GWT联系人管理器的...

    gwt实例,基于gwt-windows-1.5.2

    4. **数据绑定**:GWT的Data Binding机制使你可以方便地将UI组件的状态与Java对象的属性关联起来,简化了数据管理。 5. **与后台互动**:GWT通过Remote Procedure Calls (RPC)机制实现了客户端与服务器端的通信。当...

    smartgwt最新版本GWT的DEMO

    6. **性能优化**:SmartGWT通过延迟加载、分块加载等策略提高了组件加载速度,DEMO中可以学习到如何实现这些优化。 7. **国际化和本地化**:DEMO可能会展示如何支持多种语言,使应用更具全球化视野。 8. **拖放...

Global site tag (gtag.js) - Google Analytics