GWT版——图书管理程序开发完工 GWT version - l'achèvement de la mise en place de procédures de gestion de bibliothèque

用GWT( Google -Web-Toolkit)开发的图书管理系统终于完工了。 Avec GWT (Google Web Toolkit) développement du système de gestion de bibliothèque a finalement été achevé. 总体评价: Note:

1.界面不美观,简直是很丑陋。 1. Bumei Guan interface, il est très laid. 因为个人比较懒,而且对艺术一窍不通,再加上是从头开始学习这个东西,所以就比较专注于功能的实现,而不是界面了。 Des raisons personnelles Bijiao Lan, mais aussi pour ne savent rien sur l'art, de pair avec le début d'étudier cette chose, est plus axé sur la réalisation de propriétés fonctionnelles, plutôt que par l'interface.

2.功能少。 2. Fonction moins. 只有公告,用户信息显示,添加和删除,借还书功能。 Seuls les avis, l'information des usagers, d'ajouter et de supprimer, de faire usage de la fonction. 而且没有实现分页功能,这个最失败,今天检查作业的时候老师居然让我一直添加信息,所以一下就把我的这个漏洞给暴露了,哎。 Et ne se rendent pas compte de pagination caractéristiques, la plupart échoué, les opérations d'inspection aujourd'hui lorsque l'enseignant a même permettez-moi d'ajouter des informations, alors j'ai mis une partie de cette lacune exposés, hé. 关键是添加分页功能有点麻烦,需要自己编写几个控件,又要把函数编写得天衣无缝,现在时间又紧,所以只好作罢。 La clé consiste à ajouter un peu de mal à la fonction de pagination, la nécessité de prendre en main leur propre préparation de quelques-uns, prêts à fonctionner dans une transition, le temps serré, aussi a dû abandonner.

3.模块化还不错。 3. Modulaire assez bonne. 这次自认为在数据隐藏和模块化部分做的还行。 Le cachés dans les données depuis la partie de modulaires et également à faire. 相关的类都放在了一起,而且有相同功能的类都让我提取出来建立了父类,重构真是无处不在阿。 Des catégories apparentées sont placés ensemble, et ont le même type de fonction, j'ai extrait un père de catégories, de la reconstruction en Afghanistan est partout. 正如《重构》中说的那样:“花一点时间重构是值得的”,现在代码优雅多了。 Comme la «reconstruction» qui a déclaré: "passer un peu de temps la reconstruction est« plus élégant de code.

GWT最大的好处就是用JAVA编码,不过个人认为其中的控件布局还挺简单,只要你熟悉JAVA,做几个练习就能掌握了,个人建议把那个GWT自带的展示Widget 的例子敲一遍。 GWT le plus grand avantage est d'utiliser le codage JAVA, mais pense personnellement que l'une un peu simple disposition des commandes, aussi longtemps que vous êtes familier avec JAVA, faire quelques exercices peuvent avoir une proposition personnelle à l'écran qui vient avec GWT Widget exemple frapper à nouveau. 个人认为最不好懂的就是GWT中的异步传输,就是和server端交互的那一段,虽然GWT的文档中有说明,不过理解起来还是有点困难,大家最好看一下GWT自带的DynaTable例子,里面虽然没有连接数据库,但是给出了如何与服务器端交互。 Personnellement pense que le pire est à comprendre dans le GWT de transfert asynchrone, et côté serveur section interactive, bien que GWT note dans le document, mais est encore un peu difficile à comprendre, nous attendons au meilleur GWT est livré avec l'exemple DynaTable L'intérieur mais pas connecté à la base de données, mais compte tenu de la façon d'interagir avec le serveur-côté. 我在这里以DynaTable(在Gwt中的sample文件夹里)再说明一下步骤: Je suis ici pour DynaTable (Gwt dans l'échantillon dossier) expliquer une fois de plus les étapes:

1.在client包里建立一个接口:SchoolCalendarService,它必须继承com.google.gwt.user.client.rpc.RemoteService;,其中声明一个方法: 1. Sac à la création d'une interface client: SchoolCalendarService, il doit hériter com.google.gwt.user.client.rpc.RemoteService;, y compris une déclaration:

Person[] getPeople(int startIndex, int maxCount); Personne [] getPeople (int startIndex, int maxCount);

这里的Person是一个类名,保存关于Person的信息,因为这个方法返回一个对象数组,所以要这样声明。 Ici, la personne est un nom de classe, sauf sur la personne de l'information, parce que cette méthode renvoie un tableau d'objets, si cette déclaration.

2.再在client中建立一个接口:SchoolCalendarServiceAsync,不用从任何类继承,里面也有一个方法: 2. Toujours dans la mise en place d'une interface client: SchoolCalendarServiceAsync, pas de n'importe quel type de succession, il ya aussi une méthode:

void getPeople(int startIndex, int maxCount, AsyncCallback callback); void getPeople (int startIndex, int maxCount, AsyncCallback callback);

它和上面建立的SchoolCalendarService只有两个地方不同: Au-dessus d'elle et la création de l'SchoolCalendarService seulement deux endroits différents:

1.返回类型是void,这点要记住。 1. Retour type est vide, il points à retenir.

2.多了一个参数:AsyncCallback 。 2. Un autre paramètre: AsyncCallback. 这个是用来异步传输的,这也是返回类型是void的原因。 Il est utilisé pour de transfert asynchrone, qui est aussi le type de retour est nulle de la raison.

3.在Server端建立一个类: 3. Server-création d'une catégorie:

public class SchoolCalendarServiceImpl extends RemoteServiceServlet implements public class SchoolCalendarServiceImpl met en œuvre s'étend RemoteServiceServlet
SchoolCalendarService

它必须执行第一步声明的SchoolCalendarService,并实现它的方法。 Il doit d'abord étape dans la mise en œuvre de la Déclaration SchoolCalendarService, et la méthode pour y parvenir. 这里有一个问题:当我从数据库中读取数据并传给对象数组的时候,如果直接对这个对象数组操作,会出现错误。 Voici une question: Quand je lire les données de la base de données et de transmettre un éventail d'objectifs, si cet objet directement sur le tableau opération, il y aura des erreurs. 我不知道怎么回事。 Je ne sais pas comment l'affaire. 不过可以先声明一个ArrayList,然后没读取一条记录,就声明一个对象,赋值之后再添加到ArrayList中,最后再声明一个对象数组,操作后再传回去,象这样: Mais la déclaration pourrait être un ArrayList, puis n'a pas lu un seul enregistrement, une déclaration sur le sujet, a ajouté après la cession Ajouter ArrayList, la déclaration finale à un tableau objet, en exploitation après-retour, comme ceci:

public ArrayList content = new ArrayList(); public ArrayList contenu = new ArrayList ();
…………
while(rs.next()){ while (rs.next ()) (
BookInfo temp = new BookInfo(); Bookinfo temp = new bookinfo ();
temp.setTitle(rs.getString("title")); temp.setTitle (rs.getString ( "title"));
temp.setAuthor(rs.getString("author")); temp.setAuthor (rs.getString ( "auteur"));
temp.setIndex(rs.getString("index")); temp.setIndex (rs.getString ( "index"));
temp.setPlace(rs.getString("place")); temp.setPlace (rs.getString ( "lieu"));
temp.setPrint(rs.getString("print")); temp.setPrint (rs.getString ( "print"));
temp.setPublish(rs.getString("publish")); temp.setPublish (rs.getString ( "publier"));
content.add(temp); content.add (temp);
} )
…………
BookInfo[] results = new BookInfo[content.size()]; Bookinfo [] = new résultats bookinfo [content.size ()];
for(int i=0;i<content.size();i ) for (int i = 0; i <content.size (); i )
results[i] = (BookInfo)content.get(i); résultats [i] = (bookinfo) content.get (i);

return results; retour résultats;

4.最后在客户端获取数据的时候,这样做(这个也可以从文档中看到): 4. Enfin, le client a accès aux données, de le faire (cela peut également être vu du document):

BulletinServiceAsync bulService = (BulletinServiceAsync)GWT.cr&#101;ate(BulletinService.class); BulletinServiceAsync bulService = (BulletinServiceAsync) GWT.create (BulletinService.class);
ServiceDefTarget target = (ServiceDefTarget)bulService; ServiceDefTarget target = (ServiceDefTarget) bulService;
target.setServiceEntryPoint(&#34;/bulletin&#34;); target.setServiceEntryPoint ( "/ bulletin);

AsyncCallback callback = new AsyncCallback(){ AsyncCallback callback = new AsyncCallback () (
public void onSuccess(Object result){ public void onSuccess (Object résultat) (

results = (PublicInfo[])result; results = (PublicInfo []) result;
……

} )

public void onFailure(Throwable caught){ public void onFailure (Throwable pris) (
…………
} )
}; ),
bulService.getBulletin(callback); bulService.getBulletin (callback);

这里我只想着重说明红色部分,其它的说明文档中有详细说明。 Ici, je veux juste mettre l'accent sur la partie rouge d'autres documents en détail.
target.setServiceEntryPoint(&#34;/bulletin&#34;); target.setServiceEntryPoint ( "/ bulletin);
这一点很重要,你设置这个的时候,必须在程序的xml文件中同时设置servlet,这样写: C'est important, vous avez mis en place cette fois-ci, les procédures doivent être dans le document XML également mis en servlet, écrit comme ceci:

<servlet path=&#39;/bulletin&#39; class=&#39;com.dreamer.server.BulletinServiceImpl&#39;/> <servlet path='/bulletin' class='com.dreamer.server.BulletinServiceImpl'/>


必须要这样做,不然就会出错! Doit le faire, pas de problème! !

results = (PublicInfo[])result; results = (PublicInfo []) result;

由于传回来的只是一个对象,所以你必须使用强制类型转换才能操作。 Comme l'arrière-juste un objet, vous devez donc utiliser la conversion obligatoire de fonctionner.

以上就是与服务器端交互的说明。 Cette interaction avec le serveur côté de la note.

再来说一下我自己的程序。 Encore une fois, mes propres procédures. 我的程序最外层是一个DeckPanel,它有一个z坐标,所以它每次都显示其中的一个子页面,我就是用这个来做页面切换。 Je les procédures de la couche externe est un DeckPanel, il a un z, il montre chaque fois que l'un des sous-pages, j'utilise cela pour faire est de changer constamment de page. 后台用了ACCESS数据库,用Eclipse编码,使用JDBC-ODBC连接数据库,不过如果要连接数据库比须要先配置ODBC。 Base de données ACCESS avec l'arrière-plan, en utilisant Eclipse codage, l'utilisation de JDBC-ODBC lien base de données, mais si voulez connecter à la base de données que la première attribution de ODBC. 其它的东西我就不多说了。 Autres choses que je ne dirai pas plus. 如果有谁需要源代码的话,可以给我留言,留下E-Mail,我可以给你传过去。 Si quelqu'un a besoin du code source, il peut me donner des messages, laissant E-Mail, je peux vous donner le passé.

更新: 这个东西是我好久前做的,当时GWT还是beta,而且版本很低,现在估计已经有了很大改进,所以我这个东西早就是老古董了,代码我好像也丢了,就不发送了,抱歉 Mise à jour: C'est ce que je fais pour un il ya longtemps, lorsque le GWT ou bêta, version et faible, estimé aujourd'hui à se sont grandement améliorés, et j'ai donc cette chose est Laogu Dong, le code que j'ai semblent être perdus, pas envoyé, désolé .



本文链接: http://www.zhuoqun.net/html/y2006/150.html 转载请注明出处,谢谢。 Ce lien: http://www.zhuoqun.net/html/y2006/150.html réimpression de référence s’il vous plaît, je vous remercie.

TrackBack引用地址: http://www.zhuoqun.net/html/y2006/150.html/trackback TrackBack utilisés Adresse: http://www.zhuoqun.net/html/y2006/150.html/trackback


Posted in 刻录时光 . Classé en temps de gravure.

39条留言 39 messages
  • At 2006.07.30 09:05, julycool said: À 2006.07.30 09:05, julycool a déclaré:

    谢谢,能否给我份源码? Merci, pouvez-vous me donner la source »
    julycoolboy@gmail.com julycoolboy@gmail.com

  • At 2006.08.04 10:39, 猪小弟 said: À 2006.08.04 10:39, porcs Xiaodi a déclaré:

    谢谢,能否给我份源码? Merci, pouvez-vous me donner la source »
    gaolei_1024@163.com gaolei_1024@163.com

  • At 2006.08.10 15:22, tiankong said: À 2006.08.10 15:22, tiankong a déclaré:

    能否发份源码,学习下! Puis la source de l'apprentissage sous!
    邮箱:yangbaobao8827@163.com E-mail: yangbaobao8827@163.com

  • At 2006.09.25 13:21, 一顿麻辣 said: À 2006.09.25 13:21, repas Mala a déclaré:

    谢谢拜读一下能否给我份源码? Je vous remercie, je peux lire sur la source » jiujiu_77@163.com jiujiu_77@163.com

  • At 2006.09.25 23:04, jacky said: À 2006.09.25 23:04, Jacky dit:

    谢谢!能否给份源码学习一下!polkmn0987@163.com Merci! Capacité à apprendre sur la source! Polkmn0987@163.com

  • At 2006.09.26 08:41, tim said: À 2006.09.26 08:41, Tim a déclaré:

    刚学习GWT,能否发一份源码学习,谢谢! GWT seulement à apprendre, que ce soit une source d'apprentissage, je vous remercie! ! !

  • At 2006.09.26 08:42, tim said: À 2006.09.26 08:42, Tim a déclaré:

    刚忘了写邮箱了,zyang-093@163.com 谢谢 Juste oublié d'écrire le courrier, zyang-093@163.com Merci

  • At 2006.10.19 19:43, Pine said: À 2006.10.19 19:43, Pine, a déclaré:

    麻烦你给我发一份,谢谢。 La difficulté à vous de me donner une Merci. Pine_850827@hotmail.com

  • At 2006.10.20 16:25, bingsnow said: À 2006.10.20 16:25, bingsnow a déclaré:

    谢谢,学习GWT中,一直没找到数据库的好方法,麻烦给一份代码吧。 Je vous remercie, GWT apprentissage, la base de données n'a pas trouvé une bonne façon, la peine d'un code à barres.
    huangh0621@gmail.com huangh0621@gmail.com

  • At 2006.11.04 02:49, Allen said: À 2006.11.04 02:49, Allen a déclaré:

    请给我发一份源码,谢谢! S’il vous plaît donnez-moi une source, je vous remercie!
    allenchue#gmail.com allenchue # gmail.com

  • At 2006.11.07 09:03, nan said: À 2006.11.07 09:03, nan a déclaré:

    请发份源代码给我好吗, 我也在学习中, 先谢了. znfsouth@gmail.com S’il vous plaît envoyez-moi le code source à la bonne, je étude, le xian XIF. Znfsouth@gmail.com

  • At 2006.11.08 12:22, muou said: À 2006.11.08 12:22, muou a déclaré:

    急需连数据库的源码,如能提供,非常感谢!!! Même l'indispensable base de données source, si elles peuvent fournir, très reconnaissants!
    muou55555@163.com muou55555@163.com
    真的很谢谢……. Merci, vraiment…….

  • At 2006.11.14 11:12, ericlei said: À 2006.11.14 11:12, ericlei a déclaré:

    我们也正在用GWT开发,发份源码一起讨论下哈,谢谢 Nous utilisons également GWT développement, une source au Kazakhstan en cours de discussion, je vous remercie
    zhanglilei326@gmail.com zhanglilei326@gmail.com

  • At 2006.11.14 22:29, ZhuZhe said: À 2006.11.14 22:29, ZhuZhe a déclaré:

    汗~~怎么这么多要源码的? Khan ~ ~ comment un si grand nombre à la source » [eek]

  • At 2006.11.16 16:08, saint said: À 2006.11.16 16:08, dit saint:

    麻烦这位大哥给小弟传一份源码! email: saint112403@sina.com不胜感激!!![tea] Le problème-un grand frère à Xiaodi source Courriel: saint112403@sina.com être reconnaissant! [Thé]

  • At 2006.11.17 10:31, achry said: À 2006.11.17 10:31, achry a déclaré:

    给我发份代码哈~! Donnez-moi le code du Kazakhstan ~!
    33790310@qq.com 33790310@qq.com

  • At 2006.11.17 19:49, Yao said: À 2006.11.17 19:49, Yao a déclaré:

    请发一份源码给我学习学习。 S’il vous plaît donnez-moi une source d'apprentissage apprentissage.
    chunlinyao {at] gmail.com chunlinyao (at] gmail.com

  • At 2006.11.19 14:42, saint said: À 2006.11.19 14:42, dit saint:

    这位大哥,能否发给小弟一分可以直接导入eclipse并运行的工程!小弟现在还是个菜鸟,恳求您的帮助,非常感谢! Le frère aîné, être distribués à un Xiaodi peuvent importer directement des éclipse et lancer le projet! Xiaodi est encore une recrue, demandez à votre aide, très reconnaissants!
    email: saint112403@sina.com email: saint112403@sina.com

  • At 2006.11.20 15:35, jvencent said: À 2006.11.20 15:35, jvencent a déclaré:

    谢谢,我也需要一份。 Merci, j'ai un besoin. 顺便问一下,操作数据库的类必须放到client包下吗? Shun Bianwen le fonctionnement de la base de données catégorie package client doit être mis sous » 是否可以放到server包下? Si le paquet peut être placé sous le serveur »
    xzgf2004@gmail.com xzgf2004@gmail.com

  • At 2006.11.23 01:26, tim said: À 2006.11.23 01:26, Tim a déclaré:

    请给我发一份源码,谢谢! S’il vous plaît donnez-moi une source, je vous remercie!
    tim5305@gmail.com tim5305@gmail.com

  • At 2006.11.25 18:03, tim said: À 2006.11.25 18:03, Tim a déclaré:

    不好意思, 在我运行这个程序的时候, 当我登入图书馆。 Je suis désolé, je lance cette procédure, lorsque je me connecte à la bibliothèque. . . 它说 Il a dit
    [ERROR] Uncaught exception escaped [ERREUR] Uncaught exception échappé
    java.lang.ClassCastException: com.google.gwt.user.client.ui.DockPanel java.lang.ClassCastException: com.google.gwt.user.client.ui.DockPanel
    问题应该在这一句“((DeckPanel)panel.getParent().getParent().getParent().getParent()).add(user)“ Dans ce numéro devrait être un "((DeckPanel) panel.getParent (). GetParent (). GetParent (). GetParent ()). Ajouter (utilisateur)"
    我想请教一下这是什么问题, Je voudrais poser la question de ce qu'il est,
    我怎样才能做到切换业面 Comment puis-je passer à la surface

  • At 2006.11.25 19:45, Dreamer said: À 2006.11.25 19:45, Dreamer a déclaré:

    to tim:不好意思,GWT我只是用来做了一次大作业,现在已经差不多全部忘记完了,而且当时我使用的是某个版本的beta版。 Tim: Je suis désolé, je viens de GWT l'habitude de faire une opération d'envergure, est maintenant presque entièrement oublié la fin, puis-je utiliser une version d'une version bêta. 所以我也不知道它为什么不能运行了,抱歉了 Donc, je ne sais pas pourquoi il ne peut pas être exécuté, la triste

  • At 2006.12.03 19:30, guest said: À 2006.12.03 19:30, guest, a déclaré:

    要源码? Pour la source » 直接去http://code.google.com/webtoolkit/ Directement à http://code.google.com/webtoolkit/

  • At 2006.12.10 21:53, monster said: À 2006.12.10 21:53, monstre a déclaré:

    请教这位好心大哥一个问题,帮我看看这是个什么错误? Le frère aîné de poser une question de bonnes intentions, pour m'aider à voir ce que c'est une erreur »
    [ERROR] Unable to instantiate &#39;com.dreamer.server.BulletinServiceImpl&#39; [ERREUR] Impossible d'instancier des com.dreamer.server.BulletinServiceImpl "
    java.lang.ClassNotFoundException: com.dreamer.server.BulletinServiceImpl java.lang.ClassNotFoundException: com.dreamer.server.BulletinServiceImpl
    在访问服务器端类的时候总有错误,是什么原因? Au cours de sa visite lorsque le serveur-côté type d'erreurs, quelles sont les raisons »

  • At 2006.12.11 16:54, Dreamer said: À 2006.12.11 16:54, Dreamer a déclaré:

    to monster:抱歉。 de monstre: Désolé. GWT我只是用来做了一次大作业,现在已经差不多全部忘记完了,所以也不清楚错误状况了,可能是GWT版本更新了 GWT je viens de l'habitude de faire une opération d'envergure, est maintenant presque entièrement oublié la fin, il n'était pas évident, et être mis à jour mai version de GWT

  • At 2007.01.01 17:55, 非常想要的我 said: À 2007.01.01 17:55, je tiens beaucoup, a déclaré:

    我非常需要发个给我谢谢大虾““““““““““邮箱:ericjohns1984@sina.com Je suis tout à fait besoin d'une crevette """""""""" Je vous remercie de m'avoir donné E-mail: ericjohns1984@sina.com

  • At 2007.02.25 10:05, bobo said: À 2007.02.25 10:05, Bobo a déclaré:

    我也想要麻烦也发一份给我吧谢谢啦:) Je tiens également à des problèmes aussi fait une啦Merci, pour moi:)
    renyun2551@sohu.com renyun2551@sohu.com

  • At 2007.03.07 14:51, Skyeli said: À 2007.03.07 14:51, Skyeli a déclaré:

    我在用GWT做一个后台工具, 在入门的阶段, 能发我一份源码参考吗? J'avais l'habitude de faire une GWT outils d'arrière-plan, dans la phase d'introduction, je peux être une source de référence? " 谢谢 Merci

  • At 2007.03.07 14:52, Skylei said: À 2007.03.07 14:52, Skylei a déclaré:

    我的email是:leizhenheng@yahoo.com.cn Mon email est: leizhenheng@yahoo.com.cn

  • At 2007.03.08 22:54, tsmood said: À 2007.03.08 22:54, tsmood a déclaré:

    tsmood@gmail.com tsmood@gmail.com
    非常感谢! Merci beaucoup!

  • At 2007.03.12 17:11, sun said: À 2007.03.12 17:11, le soleil a déclaré:

    给我一份,谢谢~ Donnez-moi un Merci, ~
    li_hy2004@163.com li_hy2004@163.com

  • At 2007.04.12 21:37, cplus2 said: À 2007.04.12 21:37, cplus2 a déclaré:

    我也刚接触gwt,找了个例子稍改了点弄到eclipse里面,报错] Deferred binding failed for &#39;whut.cs.ll.Test.client.MyInterface&#39;; expect subsequent failures,查了好久实是不知道原因,望指点啊! J'ai également Gangjie Chu GWT, par exemple un peu changé le point de pénétrer dans éclipse, l'erreur] reportés pas contraignant pour «whut.cs.ll.Test.client.MyInterface '; attendre la suite des échecs, d'enquête Il s'agit d'un long temps ne sais pas pourquoi, à la recherche d'orientation: ah!
    gwt.xml: gwt.xml:
    <module>

    <!– Inherit the core Web Toolkit stuff. –> <! - Héritage de la base Web Toolkit stuff. ->
    <inherits name=&#39;com.google.gwt.user.User&#39;/> <inherits name='com.google.gwt.user.User'/>

    <!– Specify the app entry point class. –> <! - Indiquez le point d'entrée app classe. ->
    <entry-point class=&#39;whut.cs.ll.Test.client.myAjax&#39;/> <entry-point class='whut.cs.ll.Test.client.myAjax'/>
    <servlet path=&#39;/myAjax&#39; class=&#39;whut.cs.ll.Test.server.MyInterfaceImpl&#39;/> <servlet path='/myAjax' class='whut.cs.ll.Test.server.MyInterfaceImpl'/>

    </module> </ Module>

  • At 2007.04.12 21:41, cplus2 said: À 2007.04.12 21:41, cplus2 a déclaré:

    代码发不上来啊,郁闷死了 Du code et ne pouvait pas, ah, déprimant morts

  • At 2007.04.25 13:55, luna said: À 2007.04.25 13:55, Luna a déclaré:

    求求你给我发个代码吧, Je vous prie de demander un code de la barre,
    leoglee@gmail.com leoglee@gmail.com

  • At 2007.04.25 21:24, ABC said: À 2007.04.25 21:24, ABC, a déclaré:

    我也想拥有一个自己的代码, 请批我一个把[smile] Je voudrais également avoir son propre code, pour m'accorder un [sourire]

  • At 2007.05.21 02:27, 麻烦给我发一份 said: À 2007.05.21 02:27, la difficulté à me dit:

    麻烦给我发一份代码,正在做一个连接数据库的非常需要谢谢! Envoyez-moi un code d'anomalie, fait un grand besoin de connecter la base de données Merci! ! !
    chaoxxin@gmail.com chaoxxin@gmail.com

  • At 2007.05.28 18:57, coderchang said: À 2007.05.28 18:57, coderchang a déclaré:

    你好给我也传一份行不? Bonjour à une ligne-je ne suis pas » 谢谢啦:)啦Merci:)
    coderchang@yahoo.com.cn coderchang@yahoo.com.cn

  • At 2007.05.29 19:07, kobewon said: À 2007.05.29 19:07, kobewon a déclaré:

    可以给我发吗我的邮箱是wangkobe214@163.com Je peux vous donner ma boîte de réception, est wangkobe214@163.com
    谢谢我也在学习使用gwt Merci, je suis également apprendre à utiliser GWT

  • At 2007.08.21 07:21, wgtll said: À 2007.08.21 07:21, wgtll a déclaré:

    刚学习GWT,能否发一份源码学习,邮箱fuzhousea@163.com。 GWT seulement à apprendre, que ce soit une source d'apprentissage, E-mail fuzhousea@163.com. 谢谢! Merci! ! !

(Required) (Requis)
(Required, not published) (Requis, non publié)