Blame view

jeecg-boot/jeecg-boot-module-system/src/main/java/org/jeecg/JeecgOneToMainUtil.java 2.39 KB
1
2
3
4
5
6
7
8
9
10
11
package org.jeecg;

import java.util.ArrayList;
import java.util.List;

import org.jeecgframework.codegenerate.generate.impl.CodeGenerateOneToMany;
import org.jeecgframework.codegenerate.generate.pojo.onetomany.MainTableVo;
import org.jeecgframework.codegenerate.generate.pojo.onetomany.SubTableVo;

/**
 * 代码生成器入口【一对多】
12
 *  GUI模式已弃用,请转移Online模式进行代码生成 
13
 * @Author 张代浩
14
15
16
17
18
19
20
21
22
23
24
25
26
 * @site www.jeecg.org
 * 
 */
public class JeecgOneToMainUtil {

	/**
	 * 一对多(父子表)数据模型,生成方法
	 * @param args
	 */
	public static void main(String[] args) {
		//第一步:设置主表配置
		MainTableVo mainTable = new MainTableVo();
		mainTable.setTableName("jeecg_order_main");//表名
27
28
29
		mainTable.setEntityName("GuiTestOrderMain");	 //实体名
		mainTable.setEntityPackage("gui");	 //包名
		mainTable.setFtlDescription("GUI订单管理");	 //描述
30
31
32
33
34
35

		//第二步:设置子表集合配置
		List<SubTableVo> subTables = new ArrayList<SubTableVo>();
		//[1].子表一
		SubTableVo po = new SubTableVo();
		po.setTableName("jeecg_order_customer");//表名
36
37
		po.setEntityName("GuiTestOrderCustom");	    //实体名
		po.setEntityPackage("gui");	        //包名
38
39
40
41
42
43
44
45
46
47
48
49
		po.setFtlDescription("客户明细");       //描述
		//子表外键参数配置
		/*说明: 
		 * a) 子表引用主表主键ID作为外键,外键字段必须以_ID结尾;
		 * b) 主表和子表的外键字段名字,必须相同(除主键ID外);
		 * c) 多个外键字段,采用逗号分隔;
		*/
		po.setForeignKeys(new String[]{"order_id"});
		subTables.add(po);
		//[2].子表二
		SubTableVo po2 = new SubTableVo();
		po2.setTableName("jeecg_order_ticket");		//表名
50
51
		po2.setEntityName("GuiTestOrderTicket");			//实体名
		po2.setEntityPackage("gui"); 				//包名
52
53
54
55
56
57
58
59
60
61
62
63
		po2.setFtlDescription("产品明细");			//描述
		//子表外键参数配置
		/*说明: 
		 * a) 子表引用主表主键ID作为外键,外键字段必须以_ID结尾;
		 * b) 主表和子表的外键字段名字,必须相同(除主键ID外);
		 * c) 多个外键字段,采用逗号分隔;
		*/
		po2.setForeignKeys(new String[]{"order_id"});
		subTables.add(po2);
		mainTable.setSubTables(subTables);

		//第三步:一对多(父子表)数据模型,代码生成
64
		try {
65
			new CodeGenerateOneToMany(mainTable,subTables).generateCodeFile(null);
66
67
68
		} catch (Exception e) {
			e.printStackTrace();
		}
69
70
	}
}