最近一个项目中数据更改时需要使更改后的数据同步到另一个项目中,最后我们是用Spring的Http Invoker来实现的。
1.Test.java
public interface Test {
/**
* 自动从数据库同步公共信息或从传入参数同步公共信息
* @param commConfigMap
* @return
*/
public boolean syncCommConfig(Map<String, Integer> commConfigMap);
}
TestImpl.java是Test.java的实现类
public class TestImpl implements CacheCommConfigService {
/**
* 自动从数据库同步公共信息或从传入参数同步公共信息
* @param commConfigMap
* @return
*/
public boolean syncCommConfig(Map<String, Integer> commConfigMap) {...}
2.Spring的配置文件中增加以下内容:
<bean id="test"
class="com.test.util.impl.TestImpl">
</bean>
<bean id="testService"
class="org.springframework.remoting.httpinvoker.HttpInvokerServiceExporter">
<property name="service" ref="test"></property>
<property name="serviceInterface">
<value>com.test.util.Test</value>
</property>
</bean>
增加一个新的配置文件:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN 2.0//EN" "http://www.springframework.org/dtd/spring-beans-2.0.dtd">
<beans>
<bean id="urlMapping" class="org.springframework.web.servlet.handler.SimpleUrlHandlerMapping">
<property name="mappings">
<props>
<prop key="/testSync.service">testService</prop>
</props>
</property>
</bean>
</beans>
在web.xml文件中增加如下内容:
<servlet>
<servlet-name>dispatcher</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
<init-param>
<param-name>contextConfigLocation</param-name>
<param-value>classpath:spring/dispatcher-servlet.xml</param-value>
</init-param>
<load-on-startup>101</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>dispatcher</servlet-name>
<url-pattern>*.service</url-pattern>
</servlet-mapping>
3.另一个系统调用时在Spring的配置文件中加入如下XML:
<bean id="testSync"
class= "org.springframework.remoting.httpinvoker.HttpInvokerProxyFactoryBean">
<property name="serviceUrl">
<value>http://hostName:port/testSync.service</value>
</property>
<property name="serviceInterface">
<value>com.test.util.Test</value>
</property>
</bean>
调用时,哪个bean需要的话,将"testSync"这个bean注入给它即可。
分享到:
相关推荐
Spring httpInvoker使用标准java序列化机制,通过Http暴露业务服务。如果你的参数和返回值是比较复杂的,通过httpInvoker有巨大的优势。 1. 远程访问流程 1) 服务端定义服务接口 2) 服务端实现服务接口 3) 暴露服务...
这可能导致在复杂项目中使用起来不够灵活或效率较低。因此,对于专业测试团队来说,可能会倾向于使用像Postman、JMeter、SoapUI这样的更强大工具。 **替代工具推荐** 如果你觉得Http Invoker不适合你的需求,有...
- **功能简介**:包含在应用中使用 Spring 的 AOP 特性时所需的类,如声明式事务管理。 - **应用场景**:适用于需要使用 AOP 功能的项目。 - **依赖关系**:依赖于 `spring-core.jar`、`spring-beans.jar`、`cglib-...
2. Spring的HTTP调用器(Spring’s Http Invoker): Spring提供了一种特殊的允许通过HTTP进行Java串行化的远程调用策略,支持任意Java接口(就像RMI调用器)。相对应的支持类是 HttpInvokerProxyFactoryBean和 ...
这个单一的jar包几乎包含了除了`spring-mock.jar`之外的所有内容,因为`spring-mock.jar`主要是在开发环境中用于辅助测试的目的,并不适合在正式的应用系统中使用。到了Spring2.5版本之后,随着功能的不断增加和技术...
9. **spring-remoting.jar**:提供了对远程调用的支持,如EJB、JMS、RMI、Hessian、Burlap、HttpInvoker和JAX-RPC。 10. **spring-support.jar**:包含缓存、JCA、JMX、邮件服务、任务调度等高级功能的类。 11. **...
前几章我们分别利用spring rmi、httpinvoker、httpclient、webservice技术实现不同服务器间的远程访问。本章我将通过spring jms和activemq实现单Web项目服务器间异步访问和多Web项目服务器间异步访问。 一. 简介 1. ...
### 在Spring中集成DWR详解 #### 一、前言 Direct Web Remoting (DWR) 是一个简化Ajax开发的框架,它允许JavaScript调用Java方法,并且可以在服务器端执行这些方法,然后将结果返回给客户端。DWR与Spring框架的...
上两章我们分别利用Spring rmi和httpinvoker实现的远程访问功能,具体见《》和《》。本章将通过apache httpclient实现远程访问。说得简单就是直接通过spring requestmapping即请求映射url访问远程服务。 1. 远程访问...
这个jar文件包含Spring框架基本的核心工具类,Spring其它组件要都要使用到这个包里的类,是其它组件的基本核心,当然你也可以在自己的应用系统中使用这些工具类。 (2) spring-beans.jar 这个jar文件是所有应用都要...
- **Run-as 认证**:在同一会话中使用不同的安全身份。 - **Java Authentication and Authorization Service (JAAS)**:Java 平台的标准认证和授权服务。 - **JEE 容器认证**:支持使用容器管理的认证机制。 - **...
《Spring Remoting详解》 Spring框架以其强大的依赖注入和面向切面编程能力,深受开发者喜爱。在分布式系统中,远程调用(Remoting)是必不可少的技术之一,Spring Remoting提供了多种远程调用解决方案,帮助开发者...
- **Spring远程服务**:Spring框架支持多种远程服务调用机制,如RMI、HTTP invoker等,简化了远程服务的开发和部署。 5. **Web层支持** - **Spring MVC**:Spring框架提供了一种模型-视图-控制器(Model-View-...
### Spring 2.5 - 3.0 与 Hibernate 3.3 Jar 包详解 在探讨Spring 2.5到3.0以及Hibernate 3.3的Jar包之前,我们先简要回顾一下这两个框架的基本概念。 #### Spring 框架简介 Spring是一个开源的应用框架,它提供了...
本指南的前半部分将介绍Spring Security 3.0的基础知识,包括项目的背景和发展历程,以及如何开始在项目中使用该框架。此外,还将探讨Spring Security的命名空间配置,这种方式提供了一种更简单的方法来替代传统的...
### Spring框架知识点详解 #### 一、Spring框架概述 **1.1 什么是Spring框架** Spring框架是一个开源的Java框架,旨在为构建企业级应用程序提供一个全面的基础架构支持。Spring框架的核心价值在于它能极大地提高...
如果你需要在应用中使用AOP特性或者声明式事务管理,则需要此库。此外,`spring-aop.jar`还依赖于`spring-core.jar`和`spring-beans.jar`。 ##### (4) spring-context.jar 此库为Spring提供了一组扩展性的类,使得...
- `creator`属性指明了对象的创建方式,此处使用的是Spring。 - `beanName`属性的值应与`applicationContext.xml`中定义的Bean ID相匹配。 综上所述,通过上述五个步骤,我们可以成功地在SSH项目中整合DWR与Spring...