JDK1.6 实现 WebService,并在tomcat下发布

来源:互联网 发布:googlenet 网络结构 编辑:程序博客网 时间:2024/06/13 02:45
1.打开eclipse创建一个maven项目

2.创建组ID与项目名称

3. 修改maven默认的JDK版本

选中项目名称-》单击鼠标右键-》选择Properties属性-》选择ProjectFacets属性:

将JAVA的版本改为1.6

选择Java Build Path属性-》点击Source

移除缺失的文件目录,然后新增这两个文件目录

4. 为项目添加Servlet支持,在pom.xml中添加

<dependency>        <groupId>javax.servlet</groupId><artifactId>servlet-api</artifactId><version>2.5</version></dependency>

5.创建实体类User.java

package com.mycompany.life.model;public class User {private int uid;private String account;private String password;public int getUid() {return uid;}public void setUid(int uid) {this.uid = uid;}public String getAccount() {return account;}public void setAccount(String account) {this.account = account;}public String getPassword() {return password;}public void setPassword(String password) {this.password = password;}}


6.创建WebService类UserManager.java

package com.mycompany.life.ws;import javax.jws.WebMethod;import javax.jws.WebService;import com.mycompany.life.model.User;@WebServicepublic class UserManager{@WebMethodpublic void save(User user) {// TODO Auto-generated method stubSystem.out.println(user.getAccount()+":"+user.getPassword());}}


7. 创建一个servlet,利用servlet的生命周期,发布我们的WebService

package com.mycompany.life.ws.service;import javax.servlet.ServletConfig;import javax.servlet.ServletException;import javax.servlet.http.HttpServlet;import javax.xml.ws.Endpoint;import com.mycompany.life.ws.UserManager;public class UserManagerServlet extends HttpServlet {private static final long serialVersionUID = 1L;       public UserManagerServlet() {    }    @Overridepublic void init(ServletConfig config) throws ServletException {System.out.println("start");Endpoint.publish("http://localhost/UserManager", new UserManager());}@Overridepublic void destroy() {System.out.println("end");}}

8.在web.xml中做相应的映射

<servlet>  <servlet-name>UserManagerServlet</servlet-name>  <servlet-class>com.mycompany.life.ws.service.UserManagerServlet</servlet-class>  <load-on-startup>1</load-on-startup>  </servlet>  <servlet-mapping>  <servlet-name>UserManagerServlet</servlet-name>  <url-pattern>/UserManagerServlet</url-pattern>  </servlet-mapping>

 

 tomcat中运行项目,然后在浏览器中输入http://localhost/UserManager?wsdl

 如果浏览器出现下面情况,说明发布成功。

9.生成客户端需要的class文件。

  进入命令行,执行

  wsimport –d . –p com.mycompany.life.ws  http://localhost/UserManager?wsdl

 执行这表命令的时候,要保证我们的WebService已经发布成功。

然后打成JAR包,给客户端使用

jar cvf user-manager.jar com

 

10.新建一个动态WEB项目,将生成的JAR包拷贝在lib里。

新建一个测试类

package test;import com.mycompany.life.ws.User;import com.mycompany.life.ws.UserManager;import com.mycompany.life.ws.UserManagerService;public class Test {public static void main(String[] args) {UserManagerService service = new UserManagerService();UserManager um = service.getUserManagerPort();User user = new User();user.setAccount("abc");user.setPassword("123");um.save(user);}}


运行,输出 abc:123

 

 

 

原创粉丝点击