Appearance
BegCode在JHipster的基础上,对JDL的注解进行了增强,主要体现在以下几个方面。
/\*\* - 角色 _/ @importData @importDataFile(jhi_authority-rel_jhi_authority\_\_view_permissions) @skipFakeData @addCustomMethod(repository-service-queryService-updateComponent) @moduleName(system) @skipWebsite entity Authority (jhi_authority) { @importDataField name String /\*\* 角色名称 _/ @importDataField code String /** 角色代号 \*/ @importDataField info String /** 信息 _/ @importDataField @sortField(asc) order Integer /\*\* 排序 _/ @importDataField display Boolean /\*_ 展示 _/ }
本示例中角色、角色名称等,既是注释内容,又提取为相关的标题。
角色
角色名称
JAVA代码:
/** * 角色 */ @TableName(value = "jhi_authority") @org.springframework.data.elasticsearch.annotations.Document(indexName = "authority") @Getter @Setter @RequiredArgsConstructor @ToString @SuppressWarnings("common-java:DuplicatedBlocks") public class Authority implements Serializable { private static final long serialVersionUID = 1L; @TableId(value = "id", type = IdType.AUTO) @TableField(value = "id") private Long id; /** * 角色名称 */ @TableField(value = "name") @org.springframework.data.elasticsearch.annotations.Field(type = org.springframework.data.elasticsearch.annotations.FieldType.Text) private String name; }
数据库配置:
<changeSet id="20231208055201-1" author="begcode"> <createTable tableName="jhi_authority" remarks="角色"> <column name="id" type="bigint" autoIncrement="true" startWith="1500"> <constraints primaryKey="true" nullable="false"/> </column> <column name="name" type="varchar(255)" remarks="角色名称"> <constraints nullable="true" /> </column> <column name="code" type="varchar(255)" remarks="角色代号"> <constraints nullable="true" /> </column> </createTable> </changeSet>
前端配置:
const columns = (): VxeGridPropTypes.Columns => { return [ { fixed: 'left', type: 'checkbox', width: 60, }, { title: 'ID', field: 'id', minWidth: 80, visible: false, treeNode: false, params: { type: 'LONG' }, editRender: { name: 'AInputNumber', enabled: false }, }, { title: '角色名称', field: 'name', minWidth: 160, visible: true, treeNode: true, params: { type: 'STRING' }, editRender: { name: 'AInput', enabled: false }, }, { title: '角色代号', field: 'code', minWidth: 160, visible: true, treeNode: false, params: { type: 'STRING' }, editRender: { name: 'AInput', enabled: false }, }, ]; };
前端效果:
如果需要说明的内容比较多,涉及两种方式。 第一种,简单标题然后换行,BegCode只取第1行内容。 第二种,全在一行的情况下,根据符号和长度截取。 所以写注释也要有一点技巧!
示例:
/** * 权限代码 * (ROLE_开头) */ @importDataField code String required
JDL增强
BegCode在JHipster的基础上,对JDL的注解进行了增强,主要体现在以下几个方面。
1. 从注释中提取标题等关键字,省去后期修改
1.1 直接提取实体注释为列或表单项的标题
本示例中
角色
、角色名称
等,既是注释内容,又提取为相关的标题。JAVA代码:
数据库配置:
前端配置:
前端效果:
1.2 如果遇到注释较多怎么办?
如果需要说明的内容比较多,涉及两种方式。 第一种,简单标题然后换行,BegCode只取第1行内容。 第二种,全在一行的情况下,根据符号和长度截取。 所以写注释也要有一点技巧!
示例: