java web Service 基础版本

首先编写 Servicejava

package service;web

import javax.jws.WebService;
import javax.xml.ws.Endpoint;
/**
 * 一个简单的webService demo 类,使用 @WebService 注解申明 这是一个 webService 类
 */浏览器

@WebService
public class JwsServiceDemo {.net

    /**
     * WebService 注解中的方法会被发布到服务中去
     * @param Name
     * @return
     */
    public String helloJws(String userName) {
        return " Hello dear " + userName;
    }
    
    public String helloEverybody(String userName) {
        return " Hello dear " + userName;
    }
    
    /**
     * 静态方法不会发布到webService 上面 
     * @param Name
     * @return
     */
    public static String helloJwsStatic(String Name) {
        return " Hello dear " + Name;
    }
    
    /**
     * 添加WebMethod注解 且其中exclude 且属性等于 true 的时候不会发布到服务上面去
     * @param Name
     * @return
     */
    @WebMethod(exclude=true)
    public String hellJwsMethod(String Name) {
        return " Hello dear " + Name;
    }
    
    public static void main(String[] args) {
        
        /*
         * 调用javax.xml.ws.EndPoint 中的publish 来发布一个服务
         * 参数 服务发布的地址,端口
         * 提供服务的类 
         */
        Endpoint.publish("http://localhost:8084/Service", new JwsServiceDemo());
        System.out.println("WebServie 服务地启动成功 ~~~");
        
    }
}命令行

    在启动成功后能够在浏览器中输入 http://localhost:8084/Service?wsdl 。注意 ? 是英文状态xml

    若是启动无误的话就可以后看到 Service.xml 的配置文件,其中能够看到 webService 中的方法,参数等类容get

    而后下载 webService 中的类 在系统中在命令行中使用 Java命令编译器

    wsimport -keep -p com.deom.webService http://localhost:8084/Service?wsdl编译

    wsimport 中的详细类容 能够使用 wsimport -help 进行查看class

    导出时注意 写好包名 即com.deom.webService 保证将 .java 文件导入到编译器中的时候不会出现要修改包名的状况,若是修改包名有可能会出现错误。

    写好webService 服务类,导出具体的服务端代码文件以后,就能够调用服务端的 webService 端口了。

      

import com.deom.webService.JwsServiceDemo;
import com.deom.webService.JwsServiceDemoService;

/**
 * webSerivce 客户端简单案例
 *
 */
public class DemoWebCient {

    public static void main(String[] args) {
        
        /*
         * new 一个webService服务
         * 用过服务的端口拿到对用的方法,每一个webService 中的方法都会生成一个 对应的方法类
         * 经过这个方法类再调用 webService中的方法
         */
        JwsServiceDemoService jws = new JwsServiceDemoService();
        JwsServiceDemo hello = jws.getJwsServiceDemoPort();
        System.out.println(hello.helloJws("Bob"));
        
    }
    
}

完成上述操做 而且控制带打印出 Hello dear Bob 完成了一个webService 客户端调用  服务端的操做

相关文章
相关标签/搜索