轉載 http://www.javabc.com/Html/javakyjs/java_kyajax/87263814176488.html
Spring的集成幾乎異常簡單,只需要更改配置文件而已.
頁面的代碼不用動,例如
doc.simple-spring.jsp
web部署描述文件
web.xml
以前的buffalo-service.properties文件則不用,applicationContext.xml所替代之.
其中引用到的bean可以是任意被Spring托管的bean.這個Controller可以被任意任意方式的ServletDispather調用.
applicationContext.xml
remoting-servlet.xml
< script language = " javascript " >
var springEndPoint = " <%=request.getContextPath()%>/remoting/Spring-buffalo " ;
function pageMethod() {
var buffalo = new Buffalo(springEndPoint);
buffalo.remoteCall( " yourObject.yourMethod " ,[], function (reply) {
var Obj = reply.getResult();
})
}
</ script >
var springEndPoint = " <%=request.getContextPath()%>/remoting/Spring-buffalo " ;
function pageMethod() {
var buffalo = new Buffalo(springEndPoint);
buffalo.remoteCall( " yourObject.yourMethod " ,[], function (reply) {
var Obj = reply.getResult();
})
}
</ script >
web部署描述文件
web.xml
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN" "http://java.sun.com/dtd/web-app_2_3.dtd">
<web-app>
<display-name>Buffalo Web Remoting Demostration Application</display-name>
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>
/WEB-INF/applicationContext.xml
</param-value>
</context-param>
<servlet>
<servlet-name>context</servlet-name>
<servlet-class> org.springframework.web.context.ContextLoaderServlet </servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet>
<servlet-name>remoting</servlet-name>
<servlet-class> org.springframework.web.servlet.DispatcherServlet </servlet-class>
<load-on-startup>4</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>remoting</servlet-name>
<url-pattern>/remoting/*</url-pattern>
</servlet-mapping>
</web-app>
<!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN" "http://java.sun.com/dtd/web-app_2_3.dtd">
<web-app>
<display-name>Buffalo Web Remoting Demostration Application</display-name>
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>
/WEB-INF/applicationContext.xml
</param-value>
</context-param>
<servlet>
<servlet-name>context</servlet-name>
<servlet-class> org.springframework.web.context.ContextLoaderServlet </servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet>
<servlet-name>remoting</servlet-name>
<servlet-class> org.springframework.web.servlet.DispatcherServlet </servlet-class>
<load-on-startup>4</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>remoting</servlet-name>
<url-pattern>/remoting/*</url-pattern>
</servlet-mapping>
</web-app>
以前的buffalo-service.properties文件則不用,applicationContext.xml所替代之.
其中引用到的bean可以是任意被Spring托管的bean.這個Controller可以被任意任意方式的ServletDispather調用.
applicationContext.xml
<beans>
<bean name="simpleService" class="net.buffalo.demo.simple.SimpleService"> </bean>
<bean name="numberService" class="net.buffalo.demo.numberguess.NumberGuessService"> </bean>
</beans>
<bean name="simpleService" class="net.buffalo.demo.simple.SimpleService"> </bean>
<bean name="numberService" class="net.buffalo.demo.numberguess.NumberGuessService"> </bean>
</beans>
remoting-servlet.xml
<beans>
<bean name="/Spring-buffalo" class="net.buffalo.spring.BuffaloServiceExporter">
<property name="services">
<map>
<entry key="simpleService">
<ref bean="simpleService"/>
</entry>
<entry key="numberService">
<ref bean="numberService"/>
</entry>
</map>
</property></bean></beans>
<bean name="/Spring-buffalo" class="net.buffalo.spring.BuffaloServiceExporter">
<property name="services">
<map>
<entry key="simpleService">
<ref bean="simpleService"/>
</entry>
<entry key="numberService">
<ref bean="numberService"/>
</entry>
</map>
</property></bean></beans>