注解Contract的使用
在测试SpringBoot的 Assert
时候,我给 Assert.isTrue
的 expression
强制写了 false 这时候我的IDEA会给这个方法下面画一个虚线,鼠标放上去会有下面的提示
在测试SpringBoot的 Assert
时候,我给 Assert.isTrue
的 expression
强制写了 false 这时候我的IDEA会给这个方法下面画一个虚线,鼠标放上去会有下面的提示
随着业务复杂度的提升,单体应用暴露出越来越多的问题,微服务架构已成为主流选择。Spring Cloud 作为 Java 领域微服务的翘楚,提供了全家桶式的解决方案。Spring Cloud Alibaba 的核心组件 Nacos 提供了 服务发现、配置管理,有了这两个瑞士军刀就可以从零开始搭建一个包含服务注册发现、服务间调用、API 网关的基础微服务系统。
这里不讨论 “为什么要用 nacos” 或者“为什么用 nacos 不用 Eureka” 之类的话题,如果想知道为什么不用或者为什么要用可以去 Google 或者 百度 搜索一下会有很多文章告诉我们这些,我再说一遍就老生长谈了,我这里只是我想通过我的理解给大家一个最快实现微服务的这样一个场景。
LoginUser loginUser = SecurityFrameworkUtils.getLoginUser();
Long userId = loginUser.getId();
PLC4X 是一组库,用于通过多种协议与工业可编程逻辑控制器(PLC)进行通信。PLC4X 实现了最常见的工业通信协议,并使用这些协议与各种类型的设备进行通信。PLC4X 还是很强大的,我项目中就使用了这个库。
xxxMapper
@Mapper
public interface xxxMapperextends BaseMapperX<AdminUserDO> {
IPage<XXXDO> selectPage02(IPage<XXXDO> page, @Param("reqVO") XXXPageReqVO reqVO);
}
ServiceImpl
@Service
@Slf4j
public class AdminUserServiceImpl implements AdminUserService {
@Override
public PageResult<XXXDO> getUserPage(XXXPageReqVO reqVO) {
// 必须使用 MyBatis Plus 的分页对象
IPage<XXXDO> page = new Page<>(reqVO.getPageNo(), reqVO.getPageSize());
userMapper.selectPage02(page, reqVO);
return new PageResult<>(page.getRecords(), page.getTotal());
}
}