加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

webservice 客户端不集成spring写法

发布时间:2020-12-16 23:50:55 所属栏目:安全 来源:网络整理
导读:WebService?? server: 创建一个名为webserviceServer的web项目,导入相关的jar包和CXF的jar包. CXF可以apache.org去下载. web.xml Xml代码 ? ? xml ? version = "1.0" ? encoding = "UTF-8" ? ?? web-app ? version = "2.5" ? xmlns = "http://java.sun.com/x
WebService?? server:
创建一个名为webserviceServer的web项目,导入相关的jar包和CXF的jar包. CXF可以apache.org去下载.

web.xml
Xml代码 ?

收藏代码

  1. <?xml?version="1.0"?encoding="UTF-8"?>??
  2. <web-app?version="2.5"?xmlns="http://java.sun.com/xml/ns/javaee"??
  3. ????xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"??
  4. ????xsi:schemaLocation="http://java.sun.com/xml/ns/javaee???
  5. ????http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">??
  6. ??????
  7. ????<display-name>webserviceServer</display-name>??
  8. ??
  9. ????<!--?使用Spring?Filter?配置字符集?-->??
  10. ????<filter>??
  11. ????????<filter-name>Spring?character?encoding?filter</filter-name>??
  12. ????????<filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>??
  13. ????????<init-param>??
  14. ????????????<param-name>encoding</param-name>??
  15. ????????????<param-value>utf-8</param-value>??
  16. ????????</init-param>??
  17. ????</filter>??
  18. ????<filter-mapping>??
  19. ????????<filter-name>Spring?character?encoding?filter</filter-name>??
  20. ????????<url-pattern>/*</url-pattern>??
  21. ????</filter-mapping>??
  22. ??
  23. ????<!--?加载监听?-->??
  24. ????<listener>??
  25. ????????<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>??
  26. ????</listener>??
  27. ??
  28. ????<!--?加载环境上下文?-->??
  29. ????<context-param>??
  30. ????????<param-name>contextConfigLocation</param-name>??
  31. ????????<param-value>??
  32. ????????????/WEB-INF/classes/config/spring/spring-*.xml??
  33. ????????</param-value>??
  34. ????</context-param>??
  35. ??????
  36. ????<!--?Apache?CXFServlet?-->??
  37. ????<servlet>??
  38. ????????<servlet-name>CXFServlet</servlet-name>??
  39. ????????<servlet-class>org.apache.cxf.transport.servlet.CXFServlet</servlet-class>??
  40. ????????<load-on-startup>1</load-on-startup>??
  41. ????</servlet>??
  42. ????<!--?CXFServlet?Mapping?-->??
  43. ????<servlet-mapping>??
  44. ????????<servlet-name>CXFServlet</servlet-name>??
  45. ????????<url-pattern>/*</url-pattern>??
  46. ????</servlet-mapping>??
  47. ??
  48. ????<welcome-file-list>??
  49. ????????<welcome-file>index.jsp</welcome-file>??
  50. ????</welcome-file-list>??
  51. </web-app>??


spring-context.xml:
Xml代码 ?

收藏代码

  1. <?xml?version="1.0"?encoding="UTF-8"?>??
  2. <beans?xmlns="http://www.springframework.org/schema/beans"??
  3. ????xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"???
  4. ????xmlns:context="http://www.springframework.org/schema/context"??
  5. ????xmlns:jaxws="http://cxf.apache.org/jaxws"??
  6. ????xsi:schemaLocation="??
  7. ????????http://www.springframework.org/schema/beans???
  8. ????????http://www.springframework.org/schema/beans/spring-beans-3.0.xsd??
  9. ????????http://www.springframework.org/schema/context???
  10. ????????http://www.springframework.org/schema/context/spring-context-3.0.xsd??
  11. ????????http://cxf.apache.org/jaxws???
  12. ????????http://cxf.apache.org/schemas/jaxws.xsd">??
  13. ??????
  14. ????<bean?id="userService"?class="com.hao.webservice.service.impl.UserServiceImpl">??
  15. ????????<property?name="username"?value="chenghao"/>?<!--用户名-->??
  16. ????????<property?name="password"?value="123456"/>?<!--密码-->??
  17. ????</bean>??
  18. ???
  19. ????<!--?Expose?UserWebService?-->??
  20. ????<jaxws:server?id="userWebService"???
  21. ????????serviceClass="com.hao.webservice.service.IUserService"???
  22. ????????address="/UserWebService">?<!--serviceClass是接口名,?address是访问路径-->??
  23. ????????<jaxws:serviceBean>??
  24. ????????????<ref?bean="userService"/>??
  25. ????????</jaxws:serviceBean>??
  26. ????</jaxws:server>??
  27. ??
  28. </beans>??


IUserService.java:
Java代码 ?

收藏代码

  1. package?com.hao.webservice.service;??
  2. ??
  3. import?javax.jws.WebService;??
  4. ??
  5. @WebService??
  6. public?interface?IUserService?{??
  7. ????/**?
  8. ?????*?登录?
  9. ?????*?@param?username?
  10. ?????*?@param?password?
  11. ?????*?@return?
  12. ?????*/??
  13. ????String?login(String?username,?String?password);??
  14. }??


UserServiceImpl.java:
Java代码 ?

收藏代码

  1. package?com.hao.webservice.service.impl;??
  2. ??
  3. import?com.hao.webservice.service.IUserService;??
  4. ??
  5. public?class?UserServiceImpl?implements?IUserService?{??
  6. ??
  7. ????private?String?username;??
  8. ????private?String?password;??
  9. ??
  10. ????@Override??
  11. ????public?String?login(String?username,?String?password)?{??
  12. ????????if?(username.equals(getUsername())?&&?password.equals(getPassword()))?{??
  13. ????????????return?"登录成功.";??
  14. ????????}?else?{??
  15. ????????????return?"登录失败.";??
  16. ????????}??
  17. ????}??
  18. ??
  19. ????public?String?getUsername()?{??
  20. ????????return?username;??
  21. ????}??
  22. ??
  23. ????public?String?getPassword()?{??
  24. ????????return?password;??
  25. ????}??
  26. ??
  27. ????public?void?setUsername(String?username)?{??
  28. ????????this.username?=?username;??
  29. ????}??
  30. ??
  31. ????public?void?setPassword(String?password)?{??
  32. ????????this.password?=?password;??
  33. ????}??
  34. ??
  35. }??


现在将webserviceServer项目发布到servlet容器里(tomcat,jetty). 可以在浏览器输入http://localhost:8080/webserviceServer进行查看.



WebService?? client:
创建一个名为webserviceClient的web项目或java项目,导入相关的jar包和CXF的jar包. CXF可以apache.org去下载.

UserServiceTest.java
Java代码 ?

收藏代码

  1. package?com.hao.webservice.client.test;??
  2. ??
  3. import?org.apache.cxf.endpoint.Client;??
  4. import?org.apache.cxf.jaxws.endpoint.dynamic.JaxWsDynamicClientFactory;??
  5. import???
  6. public?class?UserServiceTest?{??
  7. ????public?static?void?main(String[]?args)?throws?Exception?{??
  8. ??????????
  9. ????????JaxWsDynamicClientFactory?dcf?=?JaxWsDynamicClientFactory.newInstance();??
  10. ????????Client?client?=?dcf.createClient("http://localhost:8080/webserviceServer/UserWebService?wsdl");??
  11. ????????//login?为接口中定义的方法名称???"chenghao","123456"为传递的2个参数???返回一个Object数组??
  12. ????????Object[]?objects=client.invoke("login",?"chenghao","123456");???
  13. ????????System.out.println(objects[0].toString());??
  14. ??????????
  15. ????}??
  16. }??


然后运行UserServiceTest类.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读