DWR是一个开源的类库,可以很方便的实现浏览器里的代码调用WEB服务器上的JAVA函数,操作JAVA对象或者集合。
首先需要下载dwr.jar放到WEB-INF\lib下,然后在WEB-INF创建一个名为dwr.xml的文件用于配置管理浏览器里需要调用JAVA函数。
实现用户身份验证和注册新用户功能将User对象作为参数传递
1.创建一个User对象
2.创建一个javaBean对象Blbean,含有用户身份验证的函数和注册新用户的函数
public class Blbean{
/** * 用户身份验证 */
public int loginUser(User user){
//dao.queryUser(user)
......
}
/** * 注册新用户 */
public int insertUser(User user){
//dao.saveUser(user)
......
}
}
3然后将他们配置在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>
5.html代码
<form name="form1">
uesrname:<input type="text" name="username">
<br>password:<input type="text" name="password">
<br><input type="button" value="用户登陆" width="75" height="24" οnclick="userlogin()" border="0" /> <br><input type="button" value="用户注册" width="75" height="24" οnclick="insert()" border="0" />
......
</form>
6.javascript代码
//检查用户名密码是否正确
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("用户名已被人使用了。"); } }
文章出处:http://www.diybl.com/course/4_webprogram/ajax/ajaxxl/2008624/127922.html
首先需要下载dwr.jar放到WEB-INF\lib下,然后在WEB-INF创建一个名为dwr.xml的文件用于配置管理浏览器里需要调用JAVA函数。
实现用户身份验证和注册新用户功能将User对象作为参数传递
1.创建一个User对象
2.创建一个javaBean对象Blbean,含有用户身份验证的函数和注册新用户的函数
public class Blbean{
/** * 用户身份验证 */
public int loginUser(User user){
//dao.queryUser(user)
......
}
/** * 注册新用户 */
public int insertUser(User user){
//dao.saveUser(user)
......
}
}
3然后将他们配置在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>
5.html代码
<form name="form1">
uesrname:<input type="text" name="username">
<br>password:<input type="text" name="password">
<br><input type="button" value="用户登陆" width="75" height="24" οnclick="userlogin()" border="0" /> <br><input type="button" value="用户注册" width="75" height="24" οnclick="insert()" border="0" />
......
</form>
6.javascript代码
//检查用户名密码是否正确
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("用户名已被人使用了。"); } }
文章出处:http://www.diybl.com/course/4_webprogram/ajax/ajaxxl/2008624/127922.html