package com.opensource.spring;
public interface IDoSomethingService
{
public String doSomething(String something);
}
package com.opensource.spring;
public class DoSomethingServiceImpl implements IDoSomethingService
{
@Override
public String doSomething(String something)
{
return "do " + something;
}
}
package com.opensource.spring;
import org.springframework.context.support.ClassPathXmlApplicationContext;
public class ServerMain
{
/**
* @param args
*/
public static void main(String[] args)
{
new ClassPathXmlApplicationContext(new String[] {"classpath:applicationContext-server.xml"}, true);
System.out.println("==============Server Start ......... ==============");
}
}
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:context="http://www.springframework.org/schema/context"
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd
http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.0.xsd">
<bean id="doSomethingService" class="com.opensource.spring.DoSomethingServiceImpl" />
<bean id="doSomethingServiceRmi" class="org.springframework.remoting.rmi.RmiServiceExporter">
<property name="serviceName" value="doSomethingService" />
<property name="service" ref="doSomethingService" />
<property name="serviceInterface" value="com.opensource.spring.IDoSomethingService" />
<property name="registryPort" value="8888" />
</bean>
</beans>
package com.opensource.spring;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;
public class ClientMain
{
/**
* @param args
*/
public static void main(String[] args)
{
ApplicationContext applicationContext =
new ClassPathXmlApplicationContext("classpath:applicationContext-client.xml");
IDoSomethingService object = applicationContext.getBean("doSomethingServiceRmi", IDoSomethingService.class);
System.out.println(object.doSomething("job"));
}
}
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:context="http://www.springframework.org/schema/context"
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd
http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.0.xsd">
<bean id="doSomethingServiceRmi" class="org.springframework.remoting.rmi.RmiProxyFactoryBean">
<property name="serviceUrl" value="rmi://10.138.214.115:8888/doSomethingService" />
<property name="serviceInterface" value="com.opensource.spring.IDoSomethingService" />
</bean>
</beans>