مشخصات مقاله
-
389
-
0.0
-
1396
-
0
-
0
آموزش Spring از راه دور بوسیله Burlap
Burlap
مثال Spring از راه دور توسط Burlap
Hessian و Burlap هر دو توسط Coucho ارائه شده اند. Burlap جایگزین مبتنی بر xml ، Hessian است. با کمک دو کلاس BurlapServiceExporter و BurlapProxyFactoryBean، میتوان خدمات از راه دور ارائه شده توسط Burlap را پیاده سازی کرد.
مثال از راه دور توسط Burlap
برای ایجاد یک برنامه کاربردی ساده Burlap فایل های زیر را باید ایجاد کنید.
- Calculation.java
- CalculationImpl.java
- web.xml
- burlap-servlet.xml
- client-beans.xml
- Client.java
1- Calculation.java
یک واسط ساده دربردارنده یک متد cube است.
package com.javatpoint;
public interface Calculation {
int cube(int number);
}
2- CalculationImpl.jav
این کلاس پیاده سازی واسط محاسبات(Calculation) را ارائه می دهد.
package com.javatpoint;
public class CalculationImpl implements Calculation{
public int cube(int number) {
return number*number*number;
}
}
3- web.xml
در این فایل xml، DispatcherServlet را به عنوان کنترلر جلو تعریف می کنیم. اگر هر درخواستی پسوند .http داشته باشد، بهDispatcherServlet فرستاده می شود.
< ?xml version="1.0" encoding="UTF-8" ?>
< web-app version="2.5"
xmlns="http://java.sun.com/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">
< servlet>
< servlet-name>burlap< /servlet-name>
< servlet-class>org.springframework.web.servlet.DispatcherServlet< /servlet-class>
< load-on-startup>1< /load-on-startup>
< /servlet>
< servlet-mapping>
< servlet-name>burlap< /servlet-name>
< url-pattern>*.http< /url-pattern>
< /servlet-mapping>
< /web-app>
4- Burlap-servlet.xml
این فایل باید درون پوشهWEB-INF ایجاد شود و نام آن باید servletname-servlet.xml باشد. این فایل bean را برای CalculationImpl و BurlapServiceExporter تعریف می کند.
< ?xml version="1.0" encoding="UTF-8" ?>
< beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans.xsd">
< bean id="calculationBean" class="com.javatpoint.CalculationImpl">< /bean>
< bean name="/Calculation.http"
class="org.springframework.remoting.caucho.BurlapServiceExporter">
< property name="service" ref="calculationBean">< /property>
< property name="serviceInterface" value="com.javatpoint.Calculation">< /property>
< /bean>
< /beans>
5- client-beans.xml
در این فایل xml ، bean را برای BurlapProxyFactoryBean تعریف می کنیم. علاوه بر آن دو خصیصه serviceUrl و serviceInterface از این کلاس را نیز باید تعریف کنید.
< ?xml version="1.0" encoding="UTF-8" ?>
< beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans.xsd">
< bean id="calculationBean"
class="org.springframework.remoting.caucho.BurlapProxyFactoryBean">
< property name="serviceUrl"
value="http://localhost:8888/burlap/Calculation.http">< /property>
< property name="serviceInterface" value="com.javatpoint.Calculation">< /property>
< /bean>
< /beans>
در این مثال، نام پروژه burlap است، به این معنی که به عنوان ریشه متن(context root) در serviceURL مورد استفاده قرار گرفته است.
6- Client.java
این کلاس یک نمونه از Calculation می گیرد و متد cube را فراخوانی می کند.
package com.javatpoint;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;
public class Client {
public static void main(String[] args){
ApplicationContext context = new ClassPathXmlApplicationContext("client-beans.xml");
Calculation calculation = (Calculation)context.getBean("calculationBean");
System.out.println(calculation.cube(3));
}
}
نحوه اجرای این مثال
پروژه را شروع و مستقر کنید، در اینجا فرض می کنیم سرور روی پورت شماره 8888 در حال اجرا است. اگر شماره پورت متفاوت است، serviceURL را در فایل client-beans.xml تغییر دهید. سپس فایل Client.java را کامپایل و اجرا کنید.