admin
2021-09-24 881f273bca0f94345efb2c0cac52279af4a7f4e4
src/test/java/com/generater/GeneratorTest.java
@@ -1,19 +1,82 @@
package com.generater;
import freemarker.cache.StringTemplateLoader;
import freemarker.template.Template;
import org.springframework.data.annotation.Id;
import org.springframework.data.annotation.Transient;
import org.yeshi.utils.FreemarkerUtils;
import org.yeshi.utils.generater.SpringComponentGenerater;
import org.yeshi.utils.generater.annotation.admin.form.CheckBox;
import org.yeshi.utils.generater.annotation.admin.form.Select;
import org.yeshi.utils.generater.annotation.admin.form.Text;
import org.yeshi.utils.generater.entity.KeyValue;
import org.yeshi.utils.generater.entity.MongoDBDaoData;
import org.yeshi.utils.generater.entity.admin.AdminGeneraterInfo;
import org.yeshi.utils.generater.mybatis.Column;
import org.yeshi.utils.generater.mybatis.MyBatisMapperUtil;
import org.yeshi.utils.generater.mybatis.Table;
import java.util.Date;
import java.io.File;
import java.io.InputStream;
import java.io.StringWriter;
import java.lang.annotation.Annotation;
import java.lang.reflect.Field;
import java.lang.reflect.Method;
import java.util.*;
import java.util.regex.Pattern;
public class GeneratorTest {
        public static void main(String[] args) throws Exception {
    public static void main(String[] args) throws Exception {
        //SpringComponentGenerater.createMongoDao(new MongoDBDaoData.Builder().setBaseDaoClass(BaseDao.class).setDaoPackageName("com.generator.result").setEntityClass(Entity.class).create(), "D:\\workspace\\server\\utils\\src\\test\\java\\com\\generater\\result");
        MyBatisMapperUtil.createMapper(Entity.class);
//        MyBatisMapperUtil.createMapper(Entity.class);
//打乱xml中的数据
//        Scanner scanner = new Scanner(new File("D:\\workspace\\Android\\buwan\\HanJuPlayer\\app\\res\\values\\strings.xml"));
//        List<String> lines = new ArrayList<>();
//        while (scanner.hasNextLine()) {
//            String line = scanner.nextLine().trim();
//            if (line == null || (line.startsWith("<?xml") || line.contains("<resources>") || line.contains("</resources>")))
//                continue;
//            lines.add(line);
//        }
//        scanner.close();
//        Collections.shuffle(lines);
//        for (String line : lines) {
//            System.out.println(line);
//        }
        AdminGeneraterInfo info = new AdminGeneraterInfo.Builder().setEntityClass(TestEntity.class).build();
        //将所有的控件模板加载进去
        String[] template = new String[]{
                "admin/form/checkBox.ftl",
                "admin/form/img.ftl",
                "admin/form/password.ftl",
                "admin/form/radioGroup.ftl",
                "admin/form/select.ftl",
                "admin/form/switch.ftl",
                "admin/form/text.ftl",
                "admin/form/textArea.ftl",
                "admin/add.ftl"
        };
        Map<String, InputStream> map = new HashMap<>();
        for (String st : template) {
            map.put(st, SpringComponentGenerater.class.getClassLoader().getResourceAsStream("generater/" + st));
        }
        String result = FreemarkerUtils.generateInputStream(info, "admin/add.ftl", map);
        System.out.println(result);
        //
//        boolean match = Pattern.matches("^(https://){1}.*(\\.m3u8)$", "https://n1.szjal.cn/20210805/qnDXhXBa/index.m3u8123");
//        System.out.println(match);
    }