(1)首先添加dwr.jar包
(2)添加dwr.xml文件
(3)修改web.xml文件添加代码
<servlet>
<servlet-name>dwr</servlet-name>
<servlet-class>org.directwebremoting.servlet.DwrServlet</servlet-class>
<init-param>
<param-name>debug</param-name>
<param-value>true</param-value>
</init-param>
</servlet>
<servlet-mapping>
<servlet-name>dwr</servlet-name>
<url-pattern>/dwr/*</url-pattern>
</servlet-mapping>
(4)在业务逻辑层也就是biz中写方法checkname()方法中调用根据名字查找学生是否存在,返回来得是集合,判断他的个数如果大于0证明用户存在,反之不存在
public boolean checkname(String name){
if(studentDao.findByName(name).size()>0)
{
return true;
}else{
return false;
}
}
(5)在util中在创建一个类studentdwr获取biz返回来得结果
public boolean checkname(String name){
ApplicationContext context=new ClassPathXmlApplicationContext("applicationContext.xml");
biz.IStudentBiz student=(IStudentBiz) context.getBean("studentbiz");
return student.checkname(name);
}
(6)在dwr.xml中配置信息
<dwr>
<allow>
<create creator="new" javascript="Jstudent">//Jstudent自己起的脚本名称
<param name="class" value="util.studentdwr" />//util.studentdwr表示你写的类的路径
<include method="checkname" />//checkname类的方法
</create>
</allow>
</dwr>
(7)创建页面
一个文本框id为name
一个按钮
(8)部署检查http://localhost:8080/ss/dwr/index.html看是否有我们写的方法的名称点击方法名称复制下面三个
<script type='/text/javascript' src='ss/dwr/interface/Jstudent.js'></script>
<script type='/text/javascript' src='ss/dwr/engine.js'></script>
<script type='/text/javascript' src='ss/dwr/util.js'></script>
去掉第一个根目录变成
<script type='text/javascript' src='dwr/interface/Jstudent.js'></script>
<script type='text/javascript' src='dwr/engine.js'></script>
<script type='text/javascript' src='dwr/util.js'></script>
放到创建的页面的<head></head>里面
(9)编写脚本
<script type="text/javascript">
function checkname(){//要调用的方法名
var name=document.getElementById("name").value;//获取文本框的值
Jstudent.checkname(name,huidiao);//Jstudent是我们在dwr.xml起的脚本名称,用它调用他里的方法checkname,方法多了一个回调函数,如果业务逻辑里传的是两个参数那这里就三个参数因为这里都一个回调函数,以此类推
}
function huidiao(x)//与回调还属不同的是这里多了一个参数,这里的参数就是写的方法返回的值
{
if(x)
{
alert("用户名已存在!");
}
else{
alert("用户名可以使用!");
}
}
</script>
(10)
按钮调用事件onclick="checkname()";
(11)部署运行检查