spring boot框架,基于JWS的webservice实例
来源:互联网 发布:携程 知乎 亲子园 编辑:程序博客网 时间:2024/06/06 19:14
webservice接口分为两部分:一个是服务端提供服务,另一个是客户端调用服务,我们往往写的是服务端;
server
首先是程序入口application.java
@SpringBootApplicationpublic class Application { @Value("${server.baseAddress}") private String baseAddress; @Bean public SimpleJaxWsServiceExporter simpleJaxWsServiceExporter(){ SimpleJaxWsServiceExporter simpleJaxWsServiceExporter=new SimpleJaxWsServiceExporter(); simpleJaxWsServiceExporter.setBaseAddress(baseAddress); return simpleJaxWsServiceExporter; } public static void main(String[] args) { SpringApplication.run(Application.class, args); }}
然后,定义服务接口及包含的方法,DataService .java
@WebService(targetNamespace = "http://www.freedom.cn/dataService/", serviceName = "dataService")@BindingType(SOAPBinding.SOAP12HTTP_BINDING)public interface DataService { /** * 1.1推送信息 * @param json{"studentId":"3102","studentName":"张三"} */ String pushStudentInfo(String json); /** * 1.2获取信息 * @param json {"studentId":"3102"} */ String getStudentInfo(String id);}
接口实现:DataServiceImpl.java
@Component@WebService(endpointInterface = "cn.freedom.DataService")public class DataServiceImpl implements DataService { @Autowired private JdbcTemplate jdbcTemplate; @Override String pushStudentInfo(String json) { if (StringUtils.isNotBlank(json)) { JSONObject jsonObject = JSONObject.parseObject(json); String id = jsonObject.getString("studentId"); String name = jsonObject.getString("studentName"); List<Map<Stirng, Object>> students = jdbcTemplate.queryForList("select * from student where id = ?", id); if(students.isEmpty()) { jdbcTemplate.update("insert student(id, name) values (?,?)", id, name); }else { jdbcTemplate.update("update student set name = ? where id = ?", name, id); } return "finished!"; }else { return "args wrong!"; } } @Override public String getStudentInfo(String json) { if(StringUtils.inNotBlank(json)) { JSONObject jsonObject = JSONObject.parseObject(json); String id = jsonObject.getString("studentId"); List<Map<String, Object>> students = jdbcTemplate.queryForList("select * from student where id = ?", id); if(students.isEmpty()) { return "this student doesn't exist!"; }else { return JsonUtils.mapToJosn(students.get(0)); } }else { return "the args shoudn't be empty!"; } }}
之后,配置文件application.properties
server.baseAddress=http://0.0.0.0:9091/spring.datasource.url = jdbc:sqlserver://127.0.0.1;databaseName=HISDBspring.datasource.username = saspring.datasource.password = 123456spring.datasource.driverClassName = com.microsoft.sqlserver.jdbc.SQLServerDriver#HTTPserver.port=8081
启动程序,application started! 访问http://localhost:9091/?wsdl可以访问xml,就发布成功了!
client
接下来,客户端调用服务。首先,用wsimport命令:wsimport -keep -d c:\ -p com.freedom http://localhost:9091/?wsdl将服务导入本地;
未完待续~~
阅读全文
0 0
- spring boot框架,基于JWS的webservice实例
- Webservice-基于JWS初级实例(二)
- springMVC 基于jws的webservice建立
- webservice之实现一个基于JWS的webservice项目
- webservice之实现一个基于JWS的webservice项目
- webservice之实现一个基于JWS的webservice项目
- webservice之实现一个基于JWS的webservice项目
- webservice之实现一个基于JWS的webservice项目
- 基于Jws的Webservice项目wsimport的dos命令使用
- Webservice01---快速的实现一个基于Jws的WebService项目
- Spring jws 快速发布webservice
- 快速实现一个基于Jws的Webservice项目
- CXF 快速实现基于JWS的WebService项目(转)
- WebService框架JWS、Axis2、XFire、CXF的区别
- WebService框架JWS、Axis2、XFire、CXF的区别
- WebService框架JWS、Axis2、XFire、CXF的区别
- WebService的框架JWS、Axis和CXF 比较
- webservice服务端和客户端编程:基于jws
- bzoj4385 [POI2015]Wilcze doły
- 【安全牛学习笔记】vega
- SQL语句使用07-------约束
- 搞懂朴素贝叶斯分类算法
- ZigBee CC2530 Z-Stack 22 绑定通信1-概念介紹
- spring boot框架,基于JWS的webservice实例
- c-learning-note(2017-9-22)
- Microsoft Visual Studio 使用集锦一
- linux 下查找文件或者内容常有命令
- SQL逻辑查询语句执行顺序
- CentOS7更改默认启动模式
- 【安全牛学习笔记】w3af
- 1088. Rational Arithmetic (20)
- 看完这个,让你分分钟搞定罗盘与加计校准!