更新记录
1.0.0(2023-10-25) 下载此版本
11
平台兼容性
Vue2 | Vue3 |
---|---|
√ | × |
App | 快应用 | 微信小程序 | 支付宝小程序 | 百度小程序 | 字节小程序 | QQ小程序 |
---|---|---|---|---|---|---|
HBuilderX 3.5.1 | × | × | × | × | × | × |
钉钉小程序 | 快手小程序 | 飞书小程序 | 京东小程序 |
---|---|---|---|
× | × | × | × |
H5-Safari | Android Browser | 微信浏览器(Android) | QQ浏览器(Android) | Chrome | IE | Edge | Firefox | PC-Safari |
---|---|---|---|---|---|---|---|---|
× | × | × | × | × | × | × | × | × |
快速接入
统一框架
使用项目代码web模块中的Generator.java中的main方法实现基于数据库表的项目代码自动生成。具体实施步骤代码中以放入示例及demo。
统一日志
LoggingApplicationListener.java为PanGU框架对日志的控制及统一配置,使用方式在代码中已声明,请注意使用。
项目默认支持MyBatisplus
application.yml的配置根据实际情况配置
PanGU 框架发布动态请关注:https://haigui.yuque.com/grug72/technical/rvs4x8
代码生成
PanGu存在一套默认的分层结构与众多约束。要求开发者在自行编写代码时,完全满足框架约束是不合理的。是以PanGu提供了方便的代码自动生成工具,能够根据表结构快速生成Do、Mapper、Bo等对象,开发者只需关注业务逻辑领域的Bo、Service扩展即可,具体如下项目结构。
项目结构
项目初始结构
${project}
${project}-dao
src
java
com.haigui.${project}.dao
${module}
bo
${TableName}Bo.java
dal
entity
${TableName}.java
mapper
${TableName}Mapper.java
resource
mapper
${TableName}Mapper.xml
pom.xml
${project}-dto
src
java
com.haigui.${project}.dto
${module}
${TableName}BaseDto.java
${TableName}PageDto.java
pom.xml
${project}-service
src
java
com.haigui.${project}.service
${module}
impl
${TableName}ServiceImpl.java
I${TableName}Service.java
pom.xml
${project}-web
src
java
com.haigui.${project}.web
${module}
config
UserContextConfig.java
controller
${TableName}Controller.java
vo
${TableName}Vo.java
${TableName}QueryVo.java
${TableName}PageVo.java
${TableName}ListVo.java
${Project}WebApplication.java
Generator.java
LoggingApplicationListener.java
pom.xml
pom.xml
swagger
为减少工作量及接口调试,项目整合swagger2.9.2与三方xiaoymin UI 在非正式环境中,后端接口数据会暴露在 /pandora/doc.html 页面下: swagger支持调试: swagger相关注解: | 作用范围 | API | API常用参数 | 作用位置 |
---|---|---|---|---|
协议集描述 | @Api | @Api(tags = {"tag1","tag2","..."}) | controller类 | |
协议描述 | @ApiOperation | @ApiOperation(value = "功能描述",notes = "备注") | controller类的方法 | |
描述返回对象的意义 | @ApiModel | @ApiModel(value="类名",description="类描述") | 返回对象类 | |
对象属性 | @ApiModelProperty | @ApiModelProperty(value = "类属性描述",required = true,example = "属性举例",notes = "备注") | 出入参数对象的字段 | |
非对象参数集 | @ApiImplicitParams | @ApiImplicitParams({@ApiImplicitParam(),@ApiImplicitParam(),...}) | controller的方法 | |
非对象参数描述 | @ApiImplicitParam | @ApiImplicitParam(name = "参数名",value = "参数描述",required = true,paramType = "接口传参类型",dataType = "参数数据类型") | @ApiImplicitParams的方法里用 | |
Response集 | @ApiResponses | @ApiResponses({ @ApiResponse(),@ApiResponse(),..}) | controller的方法 | |
Response | @ApiResponse | @ApiResponse(code = 10001, message = "返回信息") | @ApiResponses里用 | |
忽略注解 | @ApiIgnore | @ApiIgnore | 类,方法,方法参数 |
...