如何使用openapi-generator-cli生成无额外代码的极简POJO类
如何使用openapi-generator-cli生成无额外代码的极简POJO类
我太懂你这种只想要干净POJO的心情了——那些自动插进来的JSON序列化方法、没用的导入,还有依赖的自定义工具类,真的够烦人的!
你可以通过给openapi-generator-cli添加额外配置参数来精准控制生成的代码,完全去掉那些冗余内容,只保留最基础的POJO结构(字段、getter/setter、基础构造器)。
核心解决方法:添加--additional-properties配置
直接在你的命令里追加这些参数,就能生成你要的极简POJO:
openapi-generator-cli generate -i 你的API定义文件.json -g java --global-property models --additional-properties serializableModel=false,useLombok=false,generateModelBuilders=false,skipJsonMethods=true
逐个解释关键参数的作用:
skipJsonMethods=true:这是最关键的!直接关闭自动生成的fromJson/toJson这类JSON序列化方法,也就不会再引入那个org.openapitools.client.JSON的依赖导入了serializableModel=false:不让生成的POJO实现Serializable接口,去掉多余的序列化标记useLombok=false:如果不需要Lombok的@Data这类注解就关掉(如果你的项目用Lombok可以改成true,按需调整)generateModelBuilders=false:不生成Builder模式的代码,进一步精简结构
进阶:用配置文件统一管理参数
如果参数太多记不住,你可以写一个config.json配置文件:
{ "serializableModel": false, "useLombok": false, "generateModelBuilders": false, "skipJsonMethods": true, "modelPackage": "com.yourcompany.yourmodels" }
然后命令简化成:
openapi-generator-cli generate -i 你的API定义文件.json -g java --global-property models --config config.json
其中modelPackage可以指定生成的POJO要放在哪个包路径下,按需修改即可。
这样生成的类就完全是你想要的极简结构了——只有字段、对应的getter/setter,以及基础的构造方法,没有任何多余的代码和导入!
备注:内容来源于stack exchange,提问作者user1667016
相关产品推荐
相关产品推荐

