`

SSH2+DWR 实践 - 自动完成

    博客分类:
  • DWR
阅读更多


需求:根据输入的用户名前缀获得自动完成的列表


1.确保SSH2能跑起来

2.确保DWR2.0能跑起来

3.jquery autocomplete能跑起来


4.

User服务类:


@Component("userService")
public class UserService

 

	/**
	 * 根据用户名获得匹配
	 */
	public List<User> getMatchByPrefix(String prefixUsername) {
		List<User> retVal=null;
		try {
			retVal=userDao.findByLikeUsername(prefixUsername);
		} catch (Exception e) {
			logger.debug("根据username={}获得User出错", prefixUsername, e);
		}
		return retVal;
	}
 

 

5.dwr.xml

 

<dwr>
	<allow>
	  <create creator="spring" javascript="userService">
		<!--Spring中托管的bean名字-->
	    <param name="beanName" value="userService"/>
		<!--方法白名单-->
	    <include method="getMatchByPrefix" />
	  </create>
	<!--类型转换器-->
	<convert converter="hibernate3" match="com.mtea.erp.bean.User">
		<!--属性白名单-->
		<param name="include" value="username" />
	</convert>
	</allow>
</dwr>
 

web.xml


<!--dwr-->
	<servlet>
		<servlet-name>dwr-invoker</servlet-name>
		<servlet-class>org.directwebremoting.servlet.DwrServlet</servlet-class>
		<init-param>
			<param-name>debug</param-name>
			<param-value>true</param-value>
		</init-param>
		<init-param>
			<param-name>logLevel</param-name>
			<param-value>debug</param-value>
		</init-param>
	</servlet>

	<servlet-mapping>
		<servlet-name>dwr-invoker</servlet-name>
		<url-pattern>/dwr/*</url-pattern>
	</servlet-mapping>
	
	<!--Struts2 Filter-->
	<filter>
		<filter-name>struts2</filter-name>
		<filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class>
	</filter>

	<filter-mapping>
		<filter-name>struts2</filter-name>
		<url-pattern>/page/*</url-pattern>
	</filter-mapping>
  



6.page


用户名:<input type="text" id="username" name="user.username" value="<s:property value="user.username" />"/>


7.script:

<!-- jquery&ui core lib -->
<script type="text/javascript" src="/js/jquery/jquery-1.5.1.min.js"></script>
<script type="text/javascript" src="/js/jquery/jquery-ui-1.8.12.custom.min.js"></script>

<!-- dwr -->
<script type="text/javascript" src="/dwr/engine.js"></script>
<script type="text/javascript" src="/dwr/util.js"></script>

<script type='text/javascript' src='/dwr/interface/userService.js'></script>

 

<script type="text/javascript">
			$(document).ready(function(){ 
				//文本框不缓存
				$.fn.mtea.setInputTxtCache(["#username"],false);
				
				$("#username").keyup(function(){
					userService.getMatchByPrefix($(this).val(),function(result){
						//遍历,组装结果
						var usernameArray=[];
						$.each(result,function(i){
							usernameArray.push(result[i].username);
							//$("#result").append(result[i].username+"-");  
						});

						//自动完成
						$("#username").autocomplete({
							/*
							问题:
							->dwr.util.toDescriptiveString(result, 2) 如何使用?
							->$符号的冲突股
							->source: result,没有效果
							*/
							source: usernameArray
						});
					});
				});
			});
		</script>
 

 

8.test dwr:




9.最终效果:

 


 

 

10.问题


a.
若出现:

2011-4-30 12:10:05 org.directwebremoting.util.CommonsLoggingOutput error
严重: No converter found for 'com.mtea.erp.bean.User'

则:

    <!--类型转换器-->
    <convert converter="bean" match="com.mtea.erp.bean.User">
        <param name="include" value="username" />
    </convert>



b.若出现关于hibernate的问题

则:

不再是converter="bean",而是converter="hibernate3"



  • 大小: 5.3 KB
  • 大小: 4.7 KB
分享到:
评论

相关推荐

    Struts1.2+Hibernate3.0+Spring2+DWR OA 办公自动化管理系统

    本系统采用经典的SSH(Struts1.2、Hibernate3.0、Spring2)框架与DWR(Direct Web Remoting)技术进行构建,实现了后端与前端的高效交互。 **Struts1.2** 是一款基于MVC(Model-View-Controller)设计模式的Java ...

    SSH+DWR+EXT 增删改查

    开发者可以利用SSH框架处理业务逻辑和数据持久化,通过DWR实现实时的前后端交互,再结合EXTJS创建用户友好的界面,完成网页上的添加、删除、修改和查询操作。这对于初学者来说,是一次全面了解Java Web开发流程和...

    SSH+dwr实现三级级联

    5. **DWR回调**:当后台服务完成数据获取后,DWR会自动回调前端的JavaScript函数,将数据传递给前端进行渲染。 综上所述,"SSH + dwr 实现三级级联"是一个结合了传统MVC框架和现代Web通信技术的示例,提高了用户...

    整合SSH+DWR做的异步通信

    3. **自动JavaScript生成**:DWR自动生成JavaScript接口,开发者只需关注服务器端的Java代码。 **三、SSH与DWR整合步骤** 1. **添加DWR依赖**:首先,在项目中引入DWR的jar包,并配置web.xml,设置DWR的...

    OA项目实战,ssh+dwr开发的一个好项目

    总的来说,这个OA项目实战教程是学习SSH和DWR结合应用的宝贵资源,通过实践,开发者不仅可以巩固SSH框架的使用,还能深入理解DWR在实时Web应用中的优势。同时,对于想要提升自身项目实战能力的IT从业者来说,这是一...

    ssh+dwr2实现省市二级联动

    在IT行业中,SSH(Spring、Struts、Hibernate)是一个经典的Java Web开发框架组合,而DWR(Direct Web Remoting)则是一种JavaScript与服务器端交互的技术,常用于实现AJAX功能。本篇主要讨论如何利用SSH框架和DWR来...

    网上书店系统...SSH+dwr集成开发

    总结起来,"网上书店系统SSH+dwr集成开发"项目是一个结合了后端业务逻辑、前端交互体验和数据库管理的综合实践,展示了Java Web开发中的常见技术和最佳实践。通过这样的项目,开发者可以学习到如何有效地组织和协调...

    JAVA 开发OA办公自动化管理系统(Struts1.2+Hibernate3.0+Spring2+DWR).zip

    《JAVA开发OA办公自动化管理系统详解:Struts1.2+Hibernate3.0+Spring2+DWR集成实践》 在信息技术日新月异的今天,OA(Office Automation)办公自动化管理系统已经成为企业提升效率、实现信息化管理的重要工具。...

    JAVA 开发OA办公自动化管理系统(Struts1.2+Hibernate3.0+Spring2+DWR)130224.zip

    这是一个基于Java技术栈的OA(Office Automation)办公自动化管理系统项目,使用了经典的SSH(Struts、Spring、Hibernate)框架,并结合Direct Web Remoting (DWR) 技术。以下是这个项目涉及的关键知识点详解: 1. ...

    ajax+dwr整合

    4. **生成JavaScript接口**:DWR会根据dwr.xml自动生成JavaScript接口,可以手动刷新,也可以配置为自动刷新。 5. **编写客户端JavaScript**:在HTML页面中,使用DWR生成的接口调用服务器端的方法。 6. **实例应用...

    OA办公自动化管理系统(Struts1.2+Hibernate3.0+Spring2+DWR).zip

    OA办公自动化管理系统是一款基于Java技术的典型企业级应用,它采用了经典的SSH框架组合,即Struts1.2、Hibernate3.0和Spring2。这些框架是Java Web开发中的重要工具,帮助开发者构建高效、可维护的业务逻辑。下面将...

    办公自动化管理系统(Struts1.2+Hibernate3.0+Spring2+DWR).zip

    这是一个基于Java技术栈的办公自动化管理系统项目,使用了经典的SSH2框架,即Struts1.2、Hibernate3.0和Spring2,同时结合了DWR(Direct Web Remoting)技术来实现页面与服务器的实时交互。这个项目对于学习Java Web...

    Spring+Struts+Hibernate+DWR集成教程.rar

    本教程通过详细的文档(Spring+Struts+Hibernate+DWR集成教程.doc)指导,涵盖了这四大框架的配置、整合、实例演示等多个方面,旨在帮助开发者深入理解和实践这一经典的技术组合,提升开发技能,打造高效的企业级...

    OA办公自动化管理系统(Struts1.2+Hibernate3.0+Spring2+DWR).rar

    这个项目采用了经典的“SSH2”架构,即Struts1.2、Hibernate3.0和Spring2,以及Direct Web Remoting (DWR) 技术。下面将详细解释这些技术和在OA系统中的作用。 **Struts1.2** 是一个开源的MVC(Model-View-...

    dwr+ssh2项目整合.zip

    【标题】"dwr+ssh2项目整合.zip"所涉及的知识点主要集中在两个核心框架的集成上:Direct Web Remoting (DWR) 和 Spring Security (SSH2,原名为Spring Security的2.x版本)。这两个技术在Java Web开发中用于实现不同...

    dwr案例+文档+jar

    2. **DWR配置**:学习在web.xml和dwr.xml中设置DWR的相关配置,使DWR能够正常工作。 3. **客户端API**:掌握JavaScript中的DWR API,如何创建和调用远程对象,以及处理异步回调。 4. **服务器端API**:了解如何在...

    SSH和DWR简单整合,还包括了根据Pojo反向生成数据库的经典代码

    对于初学者,可以通过搭建简单的SSH+DWR项目来实践上述整合步骤。同时,理解每个框架的核心概念,如Spring的DI和AOP,Struts的MVC,Hibernate的ORM,以及DWR的AJAX调用,对深入学习Java Web开发至关重要。此外,查阅...

    基于ssh制作的自动办公系统

    **基于SSH制作的自动办公系统**是一个企业级的软件开发项目,主要利用SSH(Struts、Spring、Hibernate)和DWR(Direct Web Remoting)框架技术实现。SSH框架是Java Web开发中的经典组合,提供了强大的模型-视图-控制...

    【计算机专业JSP-毕业设计100套之】OA办公自动化管理系统(Struts1.2+Hibernate3.0+Spring2+D

    《OA办公自动化管理系统:基于Struts1.2+Hibernate3.0+Spring2+DWR的集成实践》 OA(Office Automation System)办公自动化管理系统是现代企业信息化建设的重要组成部分,它能够有效地提升工作效率,实现信息的高效...

    java OA办公自动化管理系统(ssh)

    Java OA办公自动化管理系统是一款基于SSH框架(Struts1.2、Hibernate3.0、Spring2)和DWR技术开发的企业级应用,旨在提高办公效率,实现无纸化办公。这个项目不仅提供了完整的源代码,还包含了数据库文件,适用于SQL...

Global site tag (gtag.js) - Google Analytics