加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

DWR操作java对象

发布时间:2020-12-16 01:51:37 所属栏目:百科 来源:网络整理
导读:-------------------------------Dwr操作java对象,改变页面信息---------------------------- Dwr使得我们可以在浏览器页面上调试java代码。 通过一些测试和学习来看了看Dwr是如何将java对象信息显示在页面上。 1.创建一个实体类: package xiao.zhang; imp

-------------------------------Dwr操作java对象,改变页面信息----------------------------

Dwr使得我们可以在浏览器页面上调试java代码。

通过一些测试和学习来看了看Dwr是如何将java对象信息显示在页面上。

1.创建一个实体类:

 
  1. packagexiao.zhang;
  2. importjava.util.*;
  3. publicclassPerson{
  4. privateStringname;
  5. privateStringaddress;
  6. publicPerson(){
  7. }
  8. publicPerson(Stringname,Stringaddress){
  9. this.name=name;
  10. this.address=address;
  11. }
  12. publicListgetAllPerson(){
  13. Listls=newArrayList();
  14. Personp=null;
  15. for(inti=0;i<87;i++){
  16. p=newPerson("name"+i,"address"+i);
  17. ls.add(p);
  18. }
  19. returnls;
  20. }
  21. publicStringgetName(){
  22. returnname;
  23. }
  24. publicvoidsetName(Stringname){
  25. this.name=name;
  26. }
  27. publicStringgetAddress(){
  28. returnaddress;
  29. }
  30. publicvoidsetAddress(Stringaddress){
  31. this.address=address;
  32. }
  33. publicStringtoString(){
  34. return"["+this.name+","+this.address+"]";
  35. }
  36. }

在这个类中写了一个getAllPerson()的方法,用来模拟一下从数据库中获取的信息。

2.接着配置web.xml文件

首先添加dwr.jar包。

 
  1. <servlet>
  2. <servlet-name>dwr</servlet-name>
  3. <servlet-class>uk.ltd.getahead.dwr.DWRServlet</servlet-class>
  4. <init-param>
  5. <param-name>debug</param-name>
  6. <param-value>true</param-value>
  7. </init-param>
  8. </servlet>
  9. <servlet-mapping>
  10. <servlet-name>dwr</servlet-name>
  11. <url-pattern>/dwr/*</url-pattern>
  12. </servlet-mapping>

为了使dwr能够操作java代码自然要配置dwr.xml文件

 
  1. <createcreator="new"javascript="Person">
  2. <paramname="class"value="xiao.zhang.Person"/>
  3. </create>
  4. <convertconverter="bean"match="xiao.zhang.Person"/>

由于是操作对象,根据dwr的规则,这里使用的类型转换,如果转化是相对于整个包的所有类的话,可以将math="xao.zhang.Person"更改为:match="xiao.zhang.*"

3.在浏览器中调试

输入URL:http://localhost:8080/工程名/dwr

进入调试页面,选择要调试的类,在这个页面将显示所有在dwr.xml中配置过的类。

很可惜的是对于操作实体bean的时候出现了这样的问题。

4.接下来修改。

对 getAllPerson()方法进行测试的时候显示如上图,不知道什么问题。

 
  1. packagexiao.zhang;
  2. importjava.util.ArrayList;
  3. importjava.util.List;
  4. publicclassPersonDao{
  5. publicListgetAllPerson(){
  6. Listls=newArrayList();
  7. Personp=null;
  8. for(inti=0;i<87;i++){
  9. p=newPerson("name"+i,"address"+i);
  10. ls.add(p);
  11. }
  12. returnls;
  13. }
  14. }

然后配置dwr.xml文件

重新测试得到预期的结果,对象类型转化正确。

将每一个Person对象作为数组的一个元素输出。
[{ filed_1,filed_2 },{ filed_1,filed_2},filed_2}````]

如果集合中存储的对象的字段与数组元素中的值一一对应。

 
  1. 添加PersonDao类的配置:
  2. <createcreator="new"javascript="PersonDao">
  3. <paramname="class"value="xiao.zhang.PersonDao"/>
  4. </create>

重新测试的结果:
重新写一个类使用getAllPerson()方法,Person类只作为一个实体Bean,讲其中的getAllPerson()方法删除。
如果Person类中的getAllPerson()方法不删除的话,调试PersonDao类仍然出现上面的问题。

本文出自 “野马红尘” 博客,谢绝转载!

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读