Buffalo AJAX的两种配置方式

  • 本文将介绍Buffalo AJAX的两种配置方式,这个AJAX框架还是中国大师开发的,用起来估计是最方便、最简单的一个。

 

第一种:Buffalo AJAX属性配置方式

一、新建一个web project,加入两个jar包:buffalo-2.0.jar和commons-logging.jar。注:若commons-logging.jar不加入,会抛出异常。

二、在项目的webRoot下加入两个js文件:buffalo.js和prototype.js,prototype.js可以到buffalo-demo下复制。

三、修改web.xml,把下面代码加入:

Xml代码

 
  
  1. <servlet>    
  2.      <servlet-name>bfappservlet-name>    
  3.      <servlet-class>net.buffalo.web.servlet.ApplicationServletservlet-class>    
  4.  servlet>    
  5.  <servlet-mapping>    
  6.      <servlet-name>bfappservlet-name>    
  7.      <url-pattern>/bfapp/*url-pattern>    
  8.  servlet-mapping>    
  9.  
  10.   <servlet> 
  11.        <servlet-name>bfappservlet-name> 
  12.        <servlet-class>net.buffalo.web.servlet.ApplicationServletservlet-class> 
  13.    servlet> 
  14.    <servlet-mapping> 
  15.        <servlet-name>bfappservlet-name> 
  16.        <url-pattern>/bfapp/*url-pattern> 
  17.    servlet-mapping> 

四、新建一个java类,就是我们用来调用的,我这里命名为:HelloService.java。如下:

Java代码

 
  
  1. package com.business;     
  2.     
  3. public class HelloService {     
  4.              
  5.     public String sayHello(String name) {     
  6.         return "Hello," + name +",欢迎使用Buffalo!";     
  7.     }     
  8. }    
  9.  
  10.  package com.business;  
  11.  
  12.  public class HelloService {  
  13.      
  14.   public String sayHello(String name) {  
  15.    return "Hello," + name +",欢迎使用Buffalo!";  
  16.   }  
  17.  } 

在源文件夹src下新建一个属性文件,命名为:buffalo-service.properties,打开输入下面:
helloService = com.business.HelloService

这个属性文件就是我们配置业务类的。

五、上面的配置就差不多,下面我们来打开index.jsp页面,在里面加上:

Js代码

 
  
  1. <script type="text/javascript" src="js/prototype.js">script>     
  2.   <script type="text/javascript" src="js/buffalo.js">script>     
  3.   <script type="text/javascript">     
  4.    var endPoint = "<%=request.getContextPath()%>/bfapp";     
  5.    var buffalo = new Buffalo(endPoint);     
  6.         
  7.    function sayHello(name) {     
  8.     //第一个参数是调用业务的方法,第二个是参数列表,用[]括起来,第三个是回调接口,     
  9.     //需要调用的都可以写在这个函数中     
  10.     buffalo.remoteCall("helloService.sayHello", [name.value], function(reply){     
  11.      alert(reply.getResult());     
  12.     });     
  13.    }     
  14.   script>    
  15.  
  16. <script type="text/javascript" src="js/prototype.js">script> 
  17.   <script type="text/javascript" src="js/buffalo.js">script> 
  18.   <script type="text/javascript"> 
  19.    var endPoint = "<%=request.getContextPath()%>/bfapp";  
  20.    var buffalo = new Buffalo(endPoint);  
  21.      
  22.    function sayHello(name) {  
  23.     //第一个参数是调用业务的方法,第二个是参数列表,用[]括起来,第三个是回调接口,  
  24.     //需要调用的都可以写在这个函数中  
  25.     buffalo.remoteCall("helloService.sayHello", [name.value], function(reply){  
  26.      alert(reply.getResult());  
  27.     });  
  28.    }  
  29.   script> 

而在body标签中加入:

请输入你的名字:

 
  
  1. <input type="text" value="" id="myname"/>    
  2.     <input type="button" value="Buffalo远程调用" onclick="sayHello($('myname'));"/> 

如果在项目中整合了spring,我们可以使用第二种spring配置方式,享受spring的注入:

一、引入spring jar包,并且把上面的说的两个jar包和两个js同样加入。

二、在web.xml中加入spring配置和buffalo的配置,如:

Xml代码

 
  
  1. <context-param>    
  2.     <param-name>contextConfigLocationparam-name>    
  3.     <param-value>classpath:applicationContext.xmlparam-value>    
  4.    context-param>    
  5.         
  6.    <listener>    
  7.     <listener-class>org.springframework.web.context.ContextLoaderListenerlistener-class>    
  8.    listener>    
  9.         
  10.   <servlet>    
  11.    <servlet-name>bfappservlet-name>    
  12.    <servlet-class>net.buffalo.web.servlet.ApplicationServletservlet-class>    
  13.   servlet>    
  14.   <servlet-mapping>    
  15.    <servlet-name>bfappservlet-name>    
  16.    <url-pattern>/bfapp/*url-pattern>    
  17.   servlet-mapping>    
  18.  
  19. <context-param> 
  20.     <param-name>contextConfigLocationparam-name> 
  21.     <param-value>classpath:applicationContext.xmlparam-value> 
  22.    context-param> 
  23.      
  24.    <listener> 
  25.     <listener-class>org.springframework.web.context.ContextLoaderListenerlistener-class> 
  26.    listener> 
  27.      
  28.   <servlet> 
  29.    <servlet-name>bfappservlet-name> 
  30.    <servlet-class>net.buffalo.web.servlet.ApplicationServletservlet-class> 
  31.   servlet> 
  32.   <servlet-mapping> 
  33.    <servlet-name>bfappservlet-name> 
  34.    <url-pattern>/bfapp/*url-pattern> 
  35.   servlet-mapping> 

三、同样书写上面的业务:HelloService.java。这里就不用要那个buffalo-service.properties属性文件了。这里就可以打开applicationContext.xml配置文件,加入下面的代码:

Xml代码

 
  
  1. <bean id="helloService" class="com.business.HelloService">bean>    
  2.        
  3.       
  4.   <bean id="buffaloServiceBean" class="net.buffalo.service.BuffaloServiceConfigurer">    
  5.    <property name="services">    
  6.     <map>    
  7.      <entry key="helloService" value-ref="helloService">entry>    
  8.     map>    
  9.    property>    
  10.   bean>    
  11.  
  12. <bean id="helloService" class="com.business.HelloService">bean> 
  13.     
  14.    
  15.   <bean id="buffaloServiceBean" class="net.buffalo.service.BuffaloServiceConfigurer"> 
  16.    <property name="services"> 
  17.     <map> 
  18.      <entry key="helloService" value-ref="helloService">entry> 
  19.     map> 
  20.    property> 
  21.   bean> 

顺便把这个日志文件log4j.properties加到src下,如下:

Properties代码

 
  
  1. log4j.rootLogger=INFO,A1     
  2. log4j.appender.A1=org.apache.log4j.ConsoleAppender     
  3. log4j.appender.A1.layout=org.apache.log4j.PatternLayout     
  4. log4j.appender.A1.layout.ConversionPattern=%d %5p [%t] (%F:%L) - %m%n    
  5.  
  6. log4j.rootLogger=INFO,A1  
  7. log4j.appender.A1=org.apache.log4j.ConsoleAppender  
  8. log4j.appender.A1.layout=org.apache.log4j.PatternLayout  
  9. log4j.appender.A1.layout.ConversionPattern=%d %5p [%t] (%F:%L) - %m%n 

四、最后一步是在jsp页面中使用,见上面的第五步(略)。

大功告成,这个AJAX框架还是我国大师开发的,用起来估计是最方便、最简单的一个,非常感谢这位大师,Buffalo AJAX,翻译成中文名字就是“牛、水牛”的意思,Buffalo AJAX牛,呵呵。

你可能感兴趣的:(Ajax)