1.mybatis PageHelper失效问题
情况1:两次查询,分业务失效
解决:
PageHelper.startPage(Optional.ofNullable(pageNo).orElse(1), Optional.ofNullable(pageSize).orElse(10));
PageHelper.startPage()放在第一次查询后
PageInfo pageInfo = new PageInfo(userVoList);
2.总结euraka 和nacos微服务之间调用
Euraka
(1) restTemplate
application.yml:
server:
vip-server: http://api-vip/
serviceImpl:
@Value("${server.vip-server}")
private String vipHost;
@Override
public UserPO getUserInfoByUserCodeByrestTemplate(String userCode) {
String url = vipHost + "/api/user/getUserInfoByUserCode?userCode=" + userCode;
String result = restTemplate.getForObject(url, String.class);
ResponseEntity<UserPO> responseEntity =
JSON.parseObject(result, new TypeReference<ResponseEntity<UserPO>>() {});
if (null != responseEntity && null != responseEntity.getData()) {
UserPO userInfo = responseEntity.getData();
return userInfo;
}
return null;
}
(2)FeignClient
value = '微服务名'
url='路径'
@FeignClient(value = "api-vip", fallback = UserFeignFallback.class)
public interface IUserFeign {
@ApiOperation(value = "查询用户详情")
@RequestMapping(path = "/api/user/getUserInfoByUserCode", method = RequestMethod.GET, produces = "application/json")
ResponseEntity<UserPO> getUserInfoByUserCode(@RequestParam(value = "userCode") String userCode);
}
@Component
class UserFeignFallback implements IUserFeign {
@Override
public ResponseEntity<UserPO> getUserInfoByUserCode(String userCode) {
throw new DwsException(ResponseCode.SYSTEM_INNER_ERROR.code(), "getUserDetail failed.");
}
}