Spring Remoting (-)
1. 使用Http 调用:首先在配置文件中定义所要暴露的接口,如下代码:
接收:
<bean name="contactExporter"
class="org.springframework.remoting.httpinvoker.HttpInvokerServiceExporter">
<property name="service" ref="contactService" />
<property name="serviceInterface"
value="com.apress.prospring3.ch16.service.ContactService" />
</bean>
定义ContactExporter作为暴露用的bean
属性service指定调用的具体实现类,属性serviceInterface指定调用的接口类型。
然后在web.xml添加暴露接口用代码,如下:
<!-- Spring Remoting with HTTP Invoker -->
<servlet>
<servlet-name>contactExporter</servlet-name>
<servlet-class>org.springframework.web.context.support.HttpRequestHandlerServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>contactExporter</servlet-name>
<url-pattern>/remoting/ContactService</url-pattern>
</servlet-mapping>
其中ContactExporter必须和上面定义的bean一致,然后定义url即可。
发送:
在spring配置文件里定义如下:
< bean id="remoteContactService"
class="org.springframework.remoting.httpinvoker.HttpInvokerProxyFactoryBean">
<property name="serviceUrl"
value="http://localhost:8080/ch16-Remoting/remoting/ContactService" />
<property name="serviceInterface"
value="com.apress.prospring3.ch16.service.ContactService" />
</bean>
指定url和调用接口即可。
2. 使用JMS收发
接收:
在spring配置文件中添加如下配置
<bean id="connectionFactory" class="org.apache.activemq.ActiveMQConnectionFactory"
p:brokerURL="tcp://localhost:61616" />
<bean id="simpleMessageListener"
class="com.apress.prospring3.ch16.jms.listener.SimpleMessageListener" />
<jms:listener-container container-type="default"
connection-factory="connectionFactory" acknowledge="auto">
<jms:listener destination="prospring3" ref="simpleMessageListener"
method="onMessage" />
</jms:listener-container>
首先定义一个connectionFactory,指定监听端口。
然后创建一个listener对象,要求实现javax.jms.MessageListener接口,用来处理接收到的消息。
最后定义一个listener-container,destination指定接受的queue名字和接收用的listener对象和调用方法。
这样系统就能收到指定queue发送的消息了。
发送:
首先在spring配置文件中添加如下配置
<bean id="connectionFactory" class="org.apache.activemq.ActiveMQConnectionFactory"
p:brokerURL="tcp://localhost:61616" />
<bean id="jmsTemplate" class="org.springframework.jms.core.JmsTemplate">
<constructor-arg name="connectionFactory" ref="connectionFactory" />
<property name="defaultDestinationName" value="prospring3" />
</bean>
指定url和queue名
然后在需要发送JMS的类里注入jmsTemplate,调用jmsTemplate.send()方法
详细信息可参考http://docs.oracle.com/javaee/5/tutorial/doc/bncdq.html 和
http://docs.oracle.com/javaee/6/api/javax/jms/Message.html
分享到:
相关推荐
org.apache.cxf.spring.remoting.Jsr181HandlerMapping.jar
org.springframework.remoting.caucho.BurlapClientInterceptor.class org.springframework.remoting.caucho.BurlapProxyFactoryBean.class org.springframework.remoting.caucho.BurlapServiceExporter.class org....
spring-remoting.jar spring-remoting.jar
6. **本地化与主题支持**:提供对不同语言和主题的支持,使应用具有国际化和个性化的能力。 7. **验证**:使用`Validator`接口进行数据验证,确保输入数据的有效性。 8. **异常处理**:通过`@ExceptionHandler`注解...
6. **Message Converters**: 为了将Java对象与AMQP消息之间进行转换,Spring-Remoting-AMQP提供了消息转换器,确保请求和响应能正确地序列化和反序列化。 通过Spring-Remoting-AMQP,开发者可以轻松地在Spring应用...
spring-security-remoting-3.1.6.RELEASE.jar spring-security-taglibs-3.1.6.RELEASE.jar spring-security-web-3.1.6.RELEASE.jar spring-test-4.1.6.RELEASE.jar spring-tx-4.1.6.RELEASE.jar spring-web-...
16.4.6. DELETEing resources 16.4.7. POSTing resource data 16.4.8. Receiving object responses from POST requests 16.4.9. Receiving a resource location after a POST request 16.4.10. Exchanging resources...
6. `spring-hibernate.jar`:封装了对Hibernate 2和3的支持,方便在Spring应用中集成Hibernate。 7. `spring-jdbc.jar`:包含了Spring对JDBC数据访问的封装类。 8. `spring-orm.jar`:扩展了DAO特性,支持iBATIS,...
11) spring -remoting.jar需spring-core.jar,spring-beans.jar,spring-aop.jar,spring- dao.jar,spring-context.jar,spring-web.jar,spring-webmvc.jar 12) spring-support.jar需spring-core.jar,spring-...
spring-security-remoting-3.1.4.RELEASE spring-security-taglibs-3.1.4.RELEASE spring-security-web-3.1.4.RELEASE 这些jar包都是通过Maven下载下来的。 还有Spring Security-3.0.1 中文官方文档
使用Spring Remoting - **远程调用**:Spring支持多种远程调用协议,如HTTP invoker、RMI等。 - **服务端与客户端**:介绍了如何实现服务端与客户端的通信。 #### 13. Spring测试 - **单元测试**:Spring提供了对...
6. **spring-hibernate.jar** 该Jar包提供了Spring与Hibernate之间的整合支持,简化了Hibernate的使用过程。 7. **spring-jdbc.jar** 这个Jar包提供了对JDBC的抽象层,可以使用简单的API来执行复杂的数据库操作...
10. **spring-security-remoting-3.1.4.RELEASE.jar**:处理远程方法调用的安全性,如RMI、Hessian和 Burlap等远程调用协议的安全控制。 这些jar包共同构成了Spring Security 3.1.4的完整框架,为企业级应用提供了...
spring-remoting.jar - **功能简介**:包含了支持 EJB、JMS、远程调用 Remoting(RMI、Hessian、Burlap、Http Invoker、JAX-RPC)方面的类。 - **应用场景**:适用于需要实现远程调用功能的项目。 - **依赖关系**:...
6. **spring-security-ldap**:这个模块支持与LDAP(轻量级目录访问协议)服务器进行集成,进行用户身份验证和目录查询。它允许将LDAP作为用户信息的来源。 7. **spring-security-crypto**:提供加密和哈希工具,如...
dubbo-remoting-grizzly dubbo-remoting-http dubbo-remoting-mina dubbo-remoting-netty dubbo-remoting-p2p dubbo-remoting-zookeeper dubbo-rpc dubbo-rpc-api dubbo-rpc-default dubbo-rpc-hessian dubbo-rpc-...
《Spring Remoting详解》 Spring框架以其强大的依赖注入和面向切面编程能力,深受开发者喜爱。在分布式系统中,远程调用(Remoting)是必不可少的技术之一,Spring Remoting提供了多种远程调用解决方案,帮助开发者...
6. **spring-dao.jar** - 包含了 Spring DAO(数据访问对象)进行数据访问的所有类。 - 为了使用声明式事务支持,还需要在应用中包含 `spring-aop.jar`。 7. **spring-hibernate.jar** - 包含了对 Hibernate ...
Spring Recipes 3rd Edition Sources ...15. Spring Java Enterprise Services and Remoting Technologies 16. Spring Messaging 17. Spring Integration 18. Spring Testing 19. Spring Caching 20. Grails