合规国际互联网加速 OSASE为企业客户提供高速稳定SD-WAN国际加速解决方案。 广告
## 一、概述 平台采用前后端分离架构,因此代码生成器的运行,也会分别针对前端和后端分别生成代码,它把一个项目开发中,大量的基础技术性工作通过工具自动生成,解放了开发者,也提高了代码的质量和工程化,是项目开发的利器; 代码生成器的使用机制,就是针对数据库表,生成运行于平台对应的前后端代码。它们包括了对数据库表的基本增加、删除、修改和查询检索等功能,从架构上,它们严格被区分为前端和后端代码; 得益于代码生成器,开发者(前后端)就可以把精力放到业务代码的开发和调整中来,他的主要工作,就是在自动生成的代码功能基础上,依据业务进行精细化调整,例如; 1、增删改查之外的非常规业务逻辑开发; 2、增删改查等常规业务逻辑的精细调整; 参考文档: [开发工具/codegenerator](../../%E5%BC%80%E5%8F%91%E5%B7%A5%E5%85%B7/codegenerator.md) [后端开发/从零开始开发](../%E5%90%8E%E7%AB%AF%E5%BC%80%E5%8F%91/%E4%BB%8E%E9%9B%B6%E5%BC%80%E5%A7%8B%E5%BC%80%E5%8F%91.md) [前端开发/从零开始开发](../%E5%89%8D%E7%AB%AF%E5%BC%80%E5%8F%91/%E4%BB%8E%E9%9B%B6%E5%BC%80%E5%A7%8B%E5%BC%80%E5%8F%91.md) ## 二、实战演练 ### **(1)设计一张表** ``` drop table if exists SAMPLE_CASE; /*==============================================================*/ /* Table: SAMPLE_CASE */ /*==============================================================*/ create table SAMPLE_CASE ( ID int not null auto_increment comment 'ID', SAMPLE_NAME varchar(50) comment '名称', SAMPLE_LENGTH int comment '长度', SAMPLE_TYPE int comment '类型字典', SAMPLE_WEIGHT double comment '重量', VERSION int comment '数据版本', DESC_CNT varchar(100) comment '备注', primary key (ID) ) ; alter table SAMPLE_CASE comment '示范'; ``` >[danger] 注意: > 1、每张表的表名及字段名,都应该做精准的中文注释,这样生成的代码可读性更好; > 2、基于powerDesigner生成表脚本的时候,需要确保能够在脚本中生成表和列的注释,参考下图; > 3、将该脚本执行到目标数据库; ##### powerDesigner设定参考图 ![](https://img.kancloud.cn/fd/48/fd487f8f14ff240658eec9f15184835b_586x408.png) ### **(2)执行代码生成** ![](https://img.kancloud.cn/28/9e/289e9bee1b3c7756c93085d7563da877_768x441.png) 执行后,将自动生成前(web目录下)后(src目录下)端所有代码; ### **(3)后端工程运行** 首先、将生成的src目录下的代码,拷贝到工程目录下; ![](https://img.kancloud.cn/e2/b8/e2b8b1511d9d9e2a764962c9710659f3_1366x736.png) 然后、直接启动运行,打开系统内置的接口定义文档来看看效果; ![](https://img.kancloud.cn/00/3b/003b9314d86fc48f5e928efacc7a2371_1366x736.png) ![](https://img.kancloud.cn/ae/6a/ae6a77a76ed34d01f00b9a8ef11add02_1366x736.png) 可以看到,运行起来的系统里面,已经多了序号为999(代码生成的时候,自动赋的序号值)的服务接口定义,里面定义了典型的增删改查业务接口; >[info] 到这里,典型的服务接口后端代码已经全部开发完成,且可以运行了,针对该实体的增删改查业务全部完成了,是不是很快? ### **(4)前端工程(PC版)运行** 参考下面的具体子章节:[PCV1运行](%E4%BB%8E%E9%9B%B6%E5%BC%80%E5%A7%8B/PCV1%E8%BF%90%E8%A1%8C.md);[PCV2运行](%E4%BB%8E%E9%9B%B6%E5%BC%80%E5%A7%8B/PCV2%E8%BF%90%E8%A1%8C.md) >[danger] PCV1与PCV2的区别在于增加和修改的页面是新开还是直接在列表页弹出;PCV1的新增和修改页面都是新开页,而PCV2则将新增和修改都放到列表页弹出; ### **(5)前端工程(H5版)运行** 参考下面的具体子章节:[H5端运行](%E4%BB%8E%E9%9B%B6%E5%BC%80%E5%A7%8B/H5%E7%AB%AF%E8%BF%90%E8%A1%8C.md) ### **(6)总结** 到这里,一个完整的前后端分离的示范应用实例就完成了设计、开发和运行了; 它已经包括了完整的业务系统中基本的增加、删除、修改和查询、分页、导出等功能; 你可以发现,我们没有自己动手写任何一行(无论前端还是后端)代码,它们都是自动生成的,我们剩下来真正需要花力气做的工作,就是根据实际的业务需求,进行精细化调整;把时间花在业务上,大幅度提高生产力!