关注JEECG发展历程 关注最新动态和版本, 记录JEECG成长点滴 更新日志 - 技术支持 - 招聘英才

JEECG最新版本下载 JEECG智能开发平台 - 显著提高开发效率 常见问题 - 入门视频 - 参与开源团队

商务QQ: 69893005、418799587 商务热线(5*8小时): 010-64808099 官方邮箱: jeecgos@163.com

查看: 18137|回复: 3

技术文档:代码生成器一对多使用

[复制链接]
发表于 2013-5-27 09:31:38 | 显示全部楼层 |阅读模式

    代码生成器工具类:
    单表:test.JeecgOneGUI
    一对多:test.JeecgOneToMainUtil



    一对多代码生成器说明:

    //第一步:设置主表
    CodeParamEntity codeParamEntityIn = new CodeParamEntity();
    codeParamEntityIn.setTableName("jeecg_order_main");//主表[表名]
    codeParamEntityIn.setEntityName("Demo4ManyKey");         //主表[实体名]
    codeParamEntityIn.setEntityPackage("jeecg");         //主表[包名]
    codeParamEntityIn.setFtlDescription("订单主数据");         //主表[描述]

    //第二步:设置子表集合
    List<SubTableEntity> subTabParamIn = new ArrayList<SubTableEntity>();
    //[1].子表一
    SubTableEntity po = new SubTableEntity();
    po.setTableName("jeecg_order_custom");                              //子表[表名]
    po.setEntityName("DemoMany4CustomKey");                        //子表[实体名]
    po.setEntityPackage("jeecg");                         //子表[包]
    po.setFtlDescription("订单客户明细");                 //子表[描述]
    po.setForeignKeys(new String[]{"GORDER_OBID","GO_ORDER_CODE"});//子表[外键:与主表关联外键]
    subTabParamIn.add(po);
    //[2].子表二
    SubTableEntity po2 = new SubTableEntity();
    po2.setTableName("jeecg_order_product");                                               //子表[表名]
    po2.setEntityName("DemoMany4ProductKey");                                       //子表[实体名]
    po2.setEntityPackage("jeecg");                                         //子表[包]
    po2.setFtlDescription("订单产品明细");                                //子表[描述]
    po2.setForeignKeys(new String[]{"GORDER_OBID","GO_ORDER_CODE"});//子表[外键:与主表关联外键]
    subTabParamIn.add(po2);
    codeParamEntityIn.setSubTabParam(subTabParamIn);

    //第三步:一对多(父子表)数据模型,代码生成
    CodeGenerateOneToMany.oneToManyCreate(subTabParamIn, codeParamEntityIn);





    技术点说明:
  • 目前代码生成器默认的主键生成策略为UUID
  • 主表和子表的目录最好保持一致
  • 子表和主表的外键规则如下:
    a.主表和子表的外键字段名字,必须相同(除主键ID外)        
    b.子表引用主表主键ID作为外键,外键字段必须以_ID结尾


发表于 2013-5-27 10:20:05 | 显示全部楼层
学习中。。
发表于 2019-9-4 18:33:47 | 显示全部楼层
你好!我有个问题是,现在在jeecg-boot的案例中有一对多示例和一对多TAB示例。通过代码自动生成可以生成一对多TAB的示例么?
发表于 2019-9-7 10:21:40 | 显示全部楼层
就是,代码生成的时候。数据库是bigint类型,为什么在entity里面对应生成的类型是java.lang.Ineger,而不是java.lang.Long
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

快速回复 返回顶部 返回列表