引:dwr实例

开发环境:eclipse3.1.2 myeclipse4.1.1 Tomcat5.0.28 Mysql5.0
dwr类包版本是1.1

[color=indigo]步骤一:配置web.xml[/color]
[code]<?xml version="1.0" encoding="UTF-8"?>
<web-app>
<servlet>
<servlet-name>action</servlet-name>
<servlet-class>org.apache.struts.action.ActionServlet</servlet-class>
<init-param>
<param-name>config</param-name>
<param-value>/WEB-INF/struts-config.xml</param-value>
</init-param>
<init-param>
<param-name>debug</param-name>
<param-value>3</param-value>
</init-param>
<init-param>
<param-name>detail</param-name>
<param-value>3</param-value>
</init-param>
<load-on-startup>0</load-on-startup>
</servlet>


<servlet-mapping>
<servlet-name>action</servlet-name>
<url-pattern>*.do</url-pattern>
</servlet-mapping>
<servlet>
<servlet-name>dwr-invoker</servlet-name>
<servlet-class>uk.ltd.getahead.dwr.DWRServlet</servlet-class>
<init-param>
<param-name>debug</param-name>
<param-value>true</param-value>
</init-param>
</servlet>

<servlet-mapping>
<servlet-name>dwr-invoker</servlet-name>
<url-pattern>/dwr/*</url-pattern>
</servlet-mapping>

<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>/WEB-INF/applicationContext.xml
</param-value>
</context-param>
<listener>
<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener>

<filter>
<filter-name>EncodingFilter</filter-name>
<filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>
<init-param>
<param-name>encoding</param-name>
<param-value>UTF-8</param-value>
</init-param>

</filter>
<filter-mapping>
<filter-name>EncodingFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>

<error-page>
<error-code>404</error-code>
<location>/404.jsp</location>
</error-page>

<error-page>
<error-code>500</error-code>
<location>/500.jsp</location>
</error-page>

<taglib>
<taglib-uri>/WEB-INF/struts-bean</taglib-uri>
<taglib-location>/WEB-INF/tld/struts-bean.tld</taglib-location>
</taglib>
<taglib>
<taglib-uri>/WEB-INF/struts-logic</taglib-uri>
<taglib-location>/WEB-INF/tld/struts-logic.tld</taglib-location>
</taglib>
<taglib>
<taglib-uri>/WEB-INF/struts-html</taglib-uri>
<taglib-location>/WEB-INF/tld/struts-html.tld</taglib-location>
</taglib>
<taglib>
<taglib-uri>/WEB-INF/struts-tiles</taglib-uri>
<taglib-location>/WEB-INF/tld/struts-tiles.tld</taglib-location>
</taglib>
<taglib>
<taglib-uri>/WEB-INF/ntu</taglib-uri>
<taglib-location>/WEB-INF/tld/ntu.tld</taglib-location>
</taglib>

</web-app>[/code]

[color=indigo]二:spring中注入相关service[/color]
[code]<bean id="ajaxTestService" class="com.lion.cms.domain.service.AjaxTestServiceImp">
<property name="commonDAO">
<ref bean="commonDAO" />
</property>
</bean>[/code]

[color=indigo]三:AjaxTestServiceImp代码[/color]
[code]public class AjaxTestServiceImp implements IAjaxTestService {

private ICommonDAO commonDAO;


public void setCommonDAO(ICommonDAO commonDAO) {
this.commonDAO = commonDAO;
}

public List getEmployeeById(String deptid) {
DetachedCriteria detachedCriteria=DetachedCriteria.forClass(Employee.class);
detachedCriteria.setFetchMode(Employee.PROP_DEPTID,FetchMode.JOIN);
detachedCriteria.add(Restrictions.eq(Employee.PROP_DEPTID+".id",deptid));
List result=commonDAO.findByCriteria(detachedCriteria);
return result;

}
}[/code]

[color=indigo]四:dwr.xml配置[/color]
[code]<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE dwr PUBLIC "-//GetAhead Limited//DTD Direct Web Remoting 1.0//EN" "http://www.getahead.ltd.uk/dwr/dwr10.dtd">

<dwr>
<allow>
<create creator="spring" javascript="ajaxTestService">
<param name="beanName" value="ajaxTestService" />
<include method="getEmployeeById" />
</create>
<convert converter="bean" match="com.lion.cms.domain.pojo.Employee">
<param name="exclude" value="com.lion.cms.domain.pojo.Dept"/>
</convert>
</allow>
</dwr>[/code]

[color=indigo]五:jsp页面[/color]
[code]<html:select styleId="deptid" property="deptid" οnchange="loadEmployList(this.value)">
<html:optionsCollection name="deptlist" label="deptname" value="id"/>
</html:select>
<html:select property="employee" styleId="employee">
<html:option value="" >请选择</html:option>
</html:select>

<script type="text/javascript">
<!--
// 加载employee下拉列表。
function loadEmployList(deptid){
if(deptid==null||deptid==''){
clearEmployeeSel();
return;
}
ajaxTestService.getEmployeeById(loadEmployListCallback,deptid);
}
var loadEmployListCallback=function(items){
clearEmployeeSel();
DWRUtil.addOptions("employee",items,"id","truename");
}
function clearEmployeeSel(){
DWRUtil.removeAllOptions("employee");
DWRUtil.addOptions("employee",[{label:'请选择',value:''}],"value","label");
}
//-->
</script>[/code]


职工和部门是多对一关系,例子简单,不详细叙述了
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值