DWR 配置 调用带对象参数的后台方法

 

一,
dwr.xml
  1. <?xml version="1.0" encoding="UTF-8"?>  
  2. <!DOCTYPE dwr PUBLIC  
  3.     "-//GetAhead Limited//DTD Direct Web Remoting 2.0//EN"  
  4.     "http://getahead.org/dwr/dwr20.dtd"> 
  5. <dwr>  
  6. <allow>          
  7. <create creator="spring" javascript="userlogin" >  
  8. <param name="beanName" value="userdao" />  
  9. <param name="location" value="applicationContext.xml"/>  
  10. </create>  
  11. <convert converter="bean" match="com.btm.login.entity.Users">   
  12. <param name="include" value="name,pass" />   
  13. </convert>  
  14. </allow>  
  15. </dwr>

页面脚本:

  1. <script type='text/javascript' src='js/util.js'></script>  
  2.     <script type='text/javascript' src='js/engine.js'></script>  
  3.     <script type='text/javascript' src='dwr/interface/userlogin.js'></script>  
  4.   
  5.     <script type="text/javascript">  
  6.     function Login(){  
  7.   
  8.     var users;  
  9.     var name1 = form1.username.value;  
  10.     var pass1 = form1.userpass.value;  
  11.     us = {name:name1,pass:pass1}  
  12.     userlogin.loginUsers(us,goback);  
  13.       
  14.     }  
  15.     function goback(user)  
  16.     {  
  17.         if(user!=null)  
  18.         {  
  19.         document.getElementById("msg").innerHTML = "欢迎您" + user.name;  
  20.         }else{  
  21.         document.getElementById("msg").innerHTML = "用户名或密码输入错误";  
  22.             }  
  23.     }  
  24.     </script>  

 

二,

dwr.xml文件中

<!DOCTYPE dwr PUBLIC     "-//GetAhead Limited//DTD Direct Web Remoting 2.0//EN"     "http://getahead.org/dwr/dwr20.dtd">

<dwr>  

<allow>    

<create creator="new" javascript="Blbean">     <!-- 对象Blbean的实例化方式,这里实用的new -->      

<param name="class" value="bean.Blbean"/>       <!-- 对象的位置 -->      

<include method="loginUser"/>      

<include method="insertUser"/>       <!-- 浏览器里需要调用到的函数 -->    

</create>    

<!--由于对象User将会作为参数,所以需要配置在convert中-->    

<convert converter="bean" match="bean.User">       

<param name="include" value="username,password" />        <!--对应User的构造方法-->    

</convert>  

</allow>

</dwr>

4.JSP下应当引入以下文件

<script src='dwr/interface/Blbean.js'></script>

<script src='dwr/engine.js'></script>

<script src='dwr/util.js'></script>

 

function userlogin(){  

var user;  var username = form1.username.value;

 var password = form1.password.value;  

user={username:username,password:password}//构造User对象

 Blbean.loginUser(user,callbackUserLogin);

}

function callbackUserLogin(msg)//获取函数返回值

{    if(msg==1){     alert("用户登陆成功。");    }else{     alert("用户登陆失败,用户名或密码错误。");    } }

//插入用户信息

function insert(){  

var user;  var username = form1.username.value;

 var password = form1.password.value;  

user={username:username,password:password}//构造User对象  

Blbean.insertUser(user,callbackInsert); }

 function callbackInsert(msg)//获取函数返回值

{    if(msg==1){      alert("用户创建成功");   showTable();    }else{      alert("用户名已被人使用了。");    } }

 

 

 

==============================================================================

第一种方法

第一步:在dwr.xml配置文件中声明实体类:

match属性指定的是实体类的文件路径

Code:
  1. <convert match="cn.qdqn.crm.entity.TUser" converter="bean"/>  

第二步,页面使用

Code:
  1. function i(){
  
  2.   var name=document.getElementById("username").value;
  
  3.   var pass=document.getElementById("password").value;
   
  4.   var o={username:name,userpassword:pass};  //模拟了DWR配置中所声明的尸体类
   
  5.      uaction.doLogin(o,tishi);
         //执行方法
  6.     function tishi(v){
            
  7.          if(v){
                
  8.              window.location.href="/crm/html/top.jsp";
    
  9.           }else{
           
  10.               alert("账户名或密码错误");
                
  11.      }
         
  12.  }
    

第二种方法:与第一种类似

第一步:在dwr.xml 中进行配置

Code:
  1. <convert match="cn.qdqn.crm.entity.TUser" converter="bean"  javascript="user"/>  

第二步:页面使用

Code:
  1. function i(){
             
  2.     var name=document.getElementById("username").value;
 
  3.     var pass=document.getElementById("password").value;
               
  4.     var o=new user();
             
  5.       o.username=name;
           
  6.       o.userpassword=pass;
              
  7.     uaction.doLogin(o,tishi);
   
  8.             function tishi(v){
                 
                      
  9.                 if(v){
                   
  10.                       window.location.href="/crm/html/top.jsp";
         
  11.                 }else{
       
  12.                   alert("账户名或密码错误");
           
  13.                  }
                
  14.      }
              
          
  15.  }  

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值