pb之自動生成dao層及Flow層

1,自動生成Dao層代碼:

package com.cn.pb;
import com.cn.pb.util.CommonUtil;
import com.cn.pb.util.PrintPbUtil;
import com.cn.pb.util.RoleUtil;
import java.io.BufferedWriter;
import java.io.File;
import java.io.FileOutputStream;
import java.io.OutputStreamWriter;
/**
 * Created by lizhihao on 2019/4/15 9:42
 * 自動生成dao層文件   命名:以表名去掉t_後命名
 */
public class OutWriterTableDaoApp {
    public static void main(String[] args) {
        PrintTableDao();
    }
    public static void PrintTableDao() {
        for (String name : PrintPbUtil.getPropertiesTableNames()) {
            StringBuffer sb = new StringBuffer();
            //自動導入包
            CommonUtil.automaticGuideDaoContent(sb);

            //去掉t_且按照駝峯命名
            String s = RoleUtil.convertTableName(name)+"Dao";
            sb.append("@Mapping").append("\r\n");
            sb.append("public interface "+ s+"{").append("\r\n");
            sb.append("  @Auto(tableName = \""+name+"\")").append("\r\n");
            sb.append("  FlowRes auto(FlowReq flowReq);").append("\r\n");
            sb.append("}").append("\r\n");
            String content = sb.toString();
            CommonUtil.generationFiles(s, sb,"file");
        }
        System.out.println("文件生成完畢!");
    }
}

2,自動生成Flow層:

package com.cn.pb;
import com.cn.pb.util.CommonUtil;
import com.cn.pb.util.PrintPbUtil;
import com.cn.pb.util.PropertiesUtil;
import com.cn.pb.util.RoleUtil;
import javax.management.relation.Role;
/**
 * Created by lizhihao on 2019/4/15 10:29
 * 自動生成Flow文件  根據配置的serviceName及相應接口名 默認返回FlowRes.ok()
 */
public class OutWriterTableFlowApp {
    public static void main(String[] args) {
        generatorFlow();
    }
    public static void generatorFlow() {
        //獲取服務名稱
        String serviceName = PropertiesUtil.getPbPropertyValue("serviceName");
        for (String name : PrintPbUtil.getPropertiesInterfaceNames()) {
            StringBuffer sb = new StringBuffer();
            //自動導包內容
            CommonUtil.automaticGuideFlowContent(sb);
            String className = CommonUtil.stringFirstToUpper(name)+"Flow";
            sb.append("@Flow(\""+serviceName+"."+ name+"\")\r\n");
            sb.append("public class "+ className+" extends SyncFlow {").append("\r\n");
            sb.append("     @Override").append("\r\n");
            sb.append("     public FlowRes entry(FlowReq flowReq) {").append("\r\n");
            sb.append("         return FlowRes.ok();").append("\r\n");
            sb.append("     }").append("\r\n");
            sb.append("}").append("\r\n");
//            System.out.println(sb.toString());
            CommonUtil.generationFiles(className, sb,"flowFile");
        }
        System.out.println("文件生成完畢!");
    }
}

 

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章