开发者中心 开发者中心
视频教程
敢为云网站
简体中文
  • 简体中文
  • 繁體中文
  • English
  • Español
  • Français
  • العربية
  • Deutsch
  • 日本語
  • 한국어
  • 6.1.0 版本
  • 10.2.0 版本
视频教程
敢为云网站
简体中文
  • 简体中文
  • 繁體中文
  • English
  • Español
  • Français
  • العربية
  • Deutsch
  • 日本語
  • 한국어
  • 平台概述
  • 平台功能
  • 平台安装
  • 开发者指南
    • 快速开始
    • 协议插件开发
    • 扩展插件开发
    • 报警插件开发
    • 应用插件开发
      • 前端Web界面开发
      • 前端H5界面开发
      • 后端接口开发(.NET)
      • 后端接口开发(JAVA)
        • 模板引擎
        • 基础开发
          • 规范说明
          • 接口定义及调用
          • 本地调试接口
          • 插件自动化打包
        • 内置特性
        • 常见FAQ
      • 工作流程开发
      • 插件打包和发布
      • 应用自定义通知
      • 应用单元测试
    • Web可视化开发
    • 3D可视化开发
    • 桌面可视化开发
    • 小程序开发
    • 应用模块接口
  • 项目实战
  • 附录

基础开发

# 基础开发

# 规范说明

# 目录名称

所有目录名称必须小写

# 类名称

所有类名称单词首字母都必须大写。[所以默认提供的模板类名请先手动进行调整]{.mark}

# 接口定义及调用

# model定义

使用《https://github.com/projectlombok/lombok (opens new window)》定义模型注解,简化编写getter或setter等操作,提高编程效率

# dao接口定义

  1. 接口命名以Mapper后缀结尾

  2. 接口继承MPJBaseMapper<模型>,实现IoTPluginMybatisMapper接口

  3. 接口添加@Extension注解

# 服务接口定义

  1. 服务接口定义名称约定以Service后缀结尾

  2. 服务接口定义的具体接口名称单词首字母小写(遵循java规范,而非C#规范首字母大写)

  3. 响应用OperateResult包裹

# 服务接口实现

  1. 服务实现定义名称约定以ServiceImpl后缀结尾

  2. 接口实现增加注解:@Sl4j(日志支持,自动生成日志对象)、@Service(自动注入接口实现)、@Transactional(显式声明事务管理)

  3. 注解@RequiredArgsConstructor,构造函数注入dao接口

  1. 若需要添加日志记录,只需在方法中使用log字段记录日志

  2. 若需调用底层dao(名称:I+表名+Mapper),例如操作设备表,构造函数直接注入IEquipMapper

# 控制器调用

若需遵循ASP.NET Core版本的接口前缀规范即/iot/api/v3,填写:${url.manage.prefix}${url.manage.version}

# 本地调试接口

插件打包放到plugins目录,通过Postman模拟测试验证

# 附加进程调试

  1. 菜单栏:Run → Attach to Process

  2. IDEA 会列出当前用户下所有可调试的 Java 进程(显示 PID 和主类名)

  3. 选择你要调试的进程,点击 OK

# 接口调试工具

通过正确的账号和密码成功登录IoTCenter平台或swagger认证授权通过,浏览器F12查看任意非匿名接口,然后复制请求头中的Cookie信息(iu-session)

# 插件自动化打包

通过mvn自动化打包插件(包含json配置、国际化翻译配置、独立依赖开源/私有组件),具体请见插件化模板默认提供的pom-parent.xml构建打包脚本。

  1. 右键clean->运行Maven构建

  2. 右键package->运行Maven构建

# 无任何独立依赖构建打包

# 独立依赖第三方组件打包

默认将主应用引入的包以groupId维度剔除(构建脚本暂未考虑插件需引用基于artifactId维度的具体包名,可能会导致独立依赖包无法打包到lib目录),仅打包插件独立依赖的包及其传递依赖项全部打包。

举个栗子:比如示例插件引入独立依赖包,打包后将自动打包到lib目录

# 独立私有包打包扩展约定

存在常见场景:第三方JAR包是私有包,不在任何于仓库中即此时私有包不在公共仓库中,约定将私有包置于插件根目录src/lib

上次更新: 2026/9/20 18:40:41

← 模板引擎 内置特性→

目录
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式