如何傳輸Java對象
JavaEE 是 J2EE的一個新的名稱,之所以改名,目的還是讓大家清楚J2EE只是Java企業應用。下面yjbys小編為大家準備了關於如何傳輸Java對象的文章,歡迎閲讀。
1. 首先是一個普通的對象,用來表示一個實體類
package s;
import ;
public class Customer {
private String id;
private String name;
private Date birthday;
public String getId() {
return id;
}
public void setId(String id) {
= id;
}
public String getName() {
return name;
}
public void setName(String name) {
= name;
}
public Date getBirthday() {
return birthday;
}
public void setBirthday(Date birthday) {
hday = birthday;
}
@Override
public String toString() {
return ectionToString(this);
}
}
2. 創建Web Service接口類
package s;
import ethod;
import aram;
import esult;
import ervice;
@WebService
public interface CustomerService {
@WebMethod
@WebResult Customer findCustomer(@WebParam String id);
}
3. 創建Web Service接口的實現類
package s;
import ndar;
public class CustomerServiceImpl implements CustomerService {
public Customer findCustomer(String id) {
Customer customer = new Customer();
d("customer_" + id);
ame("customer_name");
irthday(nstance()ime());
return customer;
}
}
4. 下面是Server端的代碼
package s;
import oint;
import ingInInterceptor;
import ingOutInterceptor;
import sServerFactoryBean;
public class MyServer {
private static final String address = "http://localhost:9000/ws/jaxws/customerService";
public static void main(String[] args) throws Exception {
// http://localhost:9000/ws/jaxws/customerService?wsdl
JaxWsServerFactoryBean factoryBean = new JaxWsServerFactoryBean();
nInterceptors()(new LoggingInInterceptor());
utInterceptors()(new LoggingOutInterceptor());
erviceClass(s);
ddress(address);
te();
}
}
5. 下面是Client端的代碼
package s;
import etTimeoutException;
import erviceException;
import sProxyFactoryBean;
public class MyClient {
public static void main(String[] args) throws Exception {
JaxWsProxyFactoryBean factoryBean = new JaxWsProxyFactoryBean();
ddress("http://localhost:9000/ws/jaxws/customerService");
erviceClass(s);
Object obj = te();
CustomerService customerService = (CustomerService) obj;
try {
Customer customer = Customer("123");
tln("Customer: " + customer);
} catch(Exception e) {
if (e instanceof WebServiceException
&& ause() instanceof SocketTimeoutException) {
tln("This is timeout exception.");
} else {
tStackTrace();
}
}
}
}
6.測試
首先運行MyServer類,然後運行MyClient類來驗證Web Service。
-
J2EE的容器組件
J2EE核心是一組技術規範與指南,其中所包含的各類組件、服務架構及技術層次,均有共同的標準及規格,讓各種依循J2EE架構的不同平台之間,存在良好的兼容性,解決過去企業後端使用的信息產品彼此之間無法兼容,企業內部或外部難以互通的窘境。以下是關於J2EE的容器組件,希望...
-
如何創建安全的Web Service
我們在使用WebService的`過程中,很多情況是需要對webservice請求做認證的,對於運行在web容器裏的應用程序來説,可能會比較簡單一些,通常可以通過filter來做一些處理,但是其實CXF本身也提供了對webservice認證的方式。1.首先是一個簡單pojopackagerity;publicclassUs...
-
常用J2EE應用服務器簡介
J2EE是一套全然不同於傳統應用開發的技術架構,包含許多組件,主要可簡化且規範應用系統的開發與部署,進而提高可移植性、安全與再用價值。下面是小編整理的關於常用J2EE應用服務器簡介,希望大家認真閲讀!Weblogic和Tomcat的區別J2ee開發主要是瀏覽器和服務器進行交...
-
Java Web服務器(應用服務器)
應用服務器主要為應用程序提供運行環境,為組件提供服務。Java的應用服務器很多,從功能上分為兩大類,JSP服務器和JavaEE服務器,也可分其他小類。下面是小編整理的關於JavaWeb服務器(應用服務器),希望大家認真閲讀!WebLogic、WebLogic是美國bea公司出品的一個applicat...