溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

利用Hessian10分鐘配置出一個簡單的跨Web服務消息推送

發(fā)布時間:2020-05-28 19:12:08 來源:網(wǎng)絡 閱讀:1096 作者:Red_Ant_hoyl 欄目:開發(fā)技術

筆者,之前對Web跨服務推送數(shù)據(jù)一無所知,今天研究了一下。其實有些事物,在不理解的時候完全覺得好似天外來物。但了解一點點之后,又會覺得十分有趣。每天閑扯一下很開心,下面一個簡單的實例10分鐘配置出跨Web服務的消息推送。
一、被調(diào)用端web.xml配置

<!--HelloHessian  -->
    <servlet>
       <servlet-name>HelloHessian</servlet-name>
        <servlet-class>com.caucho.hessian.server.HessianServlet</servlet-class><!-- Hessian自帶 -->
          <init-param>
         <param-name>home-api</param-name>
         <param-value>com.css.webservices.pushdata.AcceptMailService</param-value><!-- 你的接口 -->
        </init-param>
       <init-param>
         <param-name>home-class</param-name>
         <param-value>com.css.webservices.pushdata.AcceptMail</param-value><!-- 你的接口實現(xiàn)類 -->
        </init-param>
    </servlet>
    <servlet-mapping>
       <servlet-name>HelloHessian</servlet-name>
    <url-pattern>/HelloHessian</url-pattern>
   </servlet-mapping>

二、被調(diào)用端
我們這里定義一個接口和一個接口的實現(xiàn)類
利用Hessian10分鐘配置出一個簡單的跨Web服務消息推送
三、被調(diào)用端接口
public interface AcceptMailService {

/**
 * 
 * 遠端調(diào)用接口
 * @param text  描述類信息
 * 
 */
public void acceptMailFromWeb(String text);
}

四、被調(diào)用端接口實現(xiàn)類
public class AcceptMail implements AcceptMailService {

@Override
public void acceptMailFromWeb(String text) {
    System.err.println("我這邊接收到你推送的描述類信息為:"+text);
}

}

五、調(diào)用端
將上面的兩個文件,復制到調(diào)用端中。連同文件所在的包一起復制。也就是,定義同名,同包同內(nèi)容的同被調(diào)用端的接口和接口的實現(xiàn)類。

六、調(diào)用端,開始推送數(shù)據(jù)
你知道嗎,我們已經(jīng)配置完調(diào)用端服務器與接收端服務器了。
下面開始推送數(shù)據(jù):
調(diào)用端定義方法,塞入推送的數(shù)據(jù),直接推送。
String url = "http://xx.xx.xxx.xxx:8080/20180816/HelloHessian";
String text = "你好,hello,hello,我是要給你推數(shù)據(jù)的服務器.收到我的消息了嗎?";
HessianProxyFactory factory = new HessianProxyFactory();
AcceptMailService acceptMail;
try {
acceptMail = (AcceptMailService)factory.create(AcceptMailService.class, url.toString());
acceptMail.acceptMailFromWeb(text);
} catch (MalformedURLException e) {
e.printStackTrace();
}
七、演示:
同時啟動調(diào)用端和被調(diào)用端的服務。
然后執(zhí)行推送數(shù)據(jù)的方法
你就會在被調(diào)用端的控制臺看到這么一句話
利用Hessian10分鐘配置出一個簡單的跨Web服務消息推送
推送成功。
試想,我們將String text = "你好,hello,hello,我是要給你推數(shù)據(jù)的服務器.收到我的消息了嗎?";
推送的內(nèi)容,改為文件流的二進制編碼,是不是就可以直接推送文件了(圖片啦、音樂啦、word文檔啦等等)。
好了,這些事情待會再說,筆者要去吃雞了。

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI