spring boot 二三事(自己的小总结)
来源:互联网 发布:c语言while e 编辑:程序博客网 时间:2024/05/13 09:42
spring boot 使用小总结
1.spring boot 整合cxf,发布 与调用web service
1.1 依赖pom.xml
<dependency>
<groupId>org.apache.cxf</groupId>
<artifactId>cxf-rt-frontend-jaxws</artifactId>
<version>3.1.6</version>
</dependency>
<dependency>
<groupId>org.apache.cxf</groupId>
<artifactId>cxf-rt-transports-http</artifactId>
<version>3.1.6</version>
</dependency>
1.1.1 JaxWs spring常用注解
@WebService-定义服务
targetNamespace:指定命名空间
name:portType的名称
portName:port的名称
serviceName:服务名称
endpointInterface:SEI接口地址,如果一个服务类实现了多个接口,只需要发布一个接口的方法,可通过此注解指定要发布服务的接口。
@WebMethod-定义方法(所注解的方法必须是公开方法)
operationName:方法名
exclude:设置为true表示此方法不是webservice方法,反之则表示webservice方法
@WebResult-定义返回值(所注解位置在方法返回值名称处)
name:返回结果值的名称
@WebParam-定义参数(所注解位置在方法属性名称处)
name:指定参数的名称
1.1.2编写接口
@WebService
(name = "ClientWebServiceInterf",
targetNamespace = "http://serverService/")
public interfaceClientWebServiceInterf {
@WebMethod
public String findDSOrderDetail(
@WebParam(name ="token") Stringtoken);
@WebMethod
public String updateDSOrder(
@WebParam(name ="orderid") IntegerorderID,
@WebParam(name ="successNum") IntegersuccessNum,
@WebParam(name ="token") Stringtoken);
}
1.1.3编写实现
@WebService
(targetNamespace="http://serverService/",
endpointInterface="com.ultrasoft.datashare.webservice.ClientWebServiceInterf",
portName = "ClientWebServiceImplPort",
serviceName = "ClientWebServiceImplService")
public class ClientWebServiceImpl implementsClientWebServiceInterf {
。。。。。。。
}
1.1.4.发布服务
@Configuration
public classCxfConfig {
@Bean
public ServletRegistrationBean servletRegistrationBean() {
ServletRegistrationBeanregistration =
newServletRegistrationBean(newCXFServlet());
registration.setName("cxf");
registration.addUrlMappings("/ds/*");
returnregistration;
}
@Bean(name = Bus.DEFAULT_BUS_ID)
public SpringBus springBus() {
return newSpringBus();
}
@Bean
public ClientWebServiceInterf userService() {
return newClientWebServiceImpl();
}
@Bean
public Endpoint endpoint() {
EndpointImpl endpoint =new EndpointImpl(springBus(), userService());
endpoint.publish("/client");
returnendpoint;
}
}
1.1.5调用服务
2. springboot 里restTemplate 用法
2.1 restTemplate介绍
RestTemplate是Spring提供的用于访问Rest服务的客户端,
RestTemplate提供了多种便捷访问远程Http服务的方法,能够大大提高客户端的编写效率。
调用RestTemplate的默认构造函数,RestTemplate对象在底层通过使用java.net包下的实现创建HTTP 请求,
可以通过使用ClientHttpRequestFactory指定不同的HTTP请求方式。
ClientHttpRequestFactory接口主要提供了两种实现方式
1、一种是SimpleClientHttpRequestFactory,使用J2SE提供的方式(既java.net包提供的方式)创建底层的Http请求连接。
2、一种方式是使用HttpComponentsClientHttpRequestFactory方式,底层使用HttpClient访问远程的Http服务,使用HttpClient可以配置连接池和证书等信息。
2.1.1 注入restTemplate
平时正常使用:如下:
@Autowired
private RestTemplateBuilder builder;
想要上面的用法,就必须在boot的主类里加上如下的代码
@Bean
public RestTemplate restTemplate() {
return builder.build();
}
实际使用
@Autowired
privateRestTemplate restTemplate;
MultiValueMap<String,String> paramMap = new LinkedMultiValueMap<>();
paramMap.add("sessionId",sessionId);
Stringjson = restTemplate.postForObject("http://10.24.184.108:8888/center/v1/user/logout",paramMap, String.class);
- spring boot 二三事(自己的小总结)
- spring boot的小例子
- Spring boot的总结分享
- spring boot : 定制自己的starter
- Spring Boot:定制自己的starter
- 一个简单的spring-boot小程序
- 自己总结的小知识点
- 自己总结的小tips
- *****************************自己总结的小技巧**********************************
- Spring boot application.properties文件的配置总结(全)
- spring boot 的常用注解使用 总结
- spring boot 的常用注解使用 总结
- Spring Boot集成JdbcTemplate的问题总结~~
- Spring Boot使用方法小札(5):小议Spring的拦截器
- 对FFMPEG的小总结(自己看的)
- Spring Boot系列七 实现自己的spring boot starter工程
- spring-boot个人总结(1)
- Spring boot 错误总结(二)
- 1568.Fibonacci
- 技术总结2
- 小小粉丝度度熊
- oracle建表规则
- 技术总结3
- spring boot 二三事(自己的小总结)
- 【数据范围】
- zoj 3610 Yet Another Story of Rock-paper-scissors 忽悠。。
- MATLAB 根据X、Y坐标绘制折线图,增加右侧纵轴刻度且不用plotyy
- HPU1410: QAQ & 火星情报局
- 前端本地读取图片
- npm安装问题
- Vue开发公共模块封装(msg)
- PasswordEncoder加密后如何验证问题