import net.tccn.base.*; import net.tccn.dbq.fbean.FBean; import net.tccn.dbq.jdbc.api.DbAccount; import net.tccn.dbq.jdbc.api.DbKit; import net.tccn.dbq.parser.ParseMysql; import net.tccn.meta.MetaService; import net.tccn.meta.MetaTable; import net.tccn.qtask.TaskEntity; import net.tccn.qtask.TaskKit; import net.tccn.user.User; import org.apache.poi.ss.usermodel.Workbook; import org.junit.Test; import org.redkale.convert.json.JsonConvert; import org.redkale.source.CacheMemorySource; import org.redkale.util.TypeToken; import java.io.File; import java.io.FileInputStream; import java.io.FileOutputStream; import java.io.IOException; import java.lang.reflect.Type; import java.util.Date; import java.util.HashMap; import java.util.List; import java.util.Map; import static java.util.Arrays.asList; /** * @author: liangxianyou at 2019/1/20 12:43. */ public class RunTest { JsonConvert convert = JsonConvert.root(); /*public static Task A = new Task("mysql", "select * from user where userid=#(userid)", "查询用户列表", Kv.of("userid", 1)); public static Task B = new Task("method", "User.say", "user调用", Kv.of("name", "张三").set("age", 13)); public static Task C = new Task("http", "http://127.0.0.1/meta/db_plat_list?platToken=3421432", "查询数据平台列表", Kv.of("abx", "abx111")); public static Task d = new Task("es", "http://192.168.91.5:9200/_sql?", "查询数据平台列表", Kv.of("sql", "select * from basic_iotdevice_all limit 10")); public static Task e = new Task("http", "http://192.168.91.5:9200/_sql?sql=select%20*%20from%20basic_iotdevice_all%20limit%2010", "查询数据平台列表", Kv.of()); */ //@Test /*public void qtaskTest() { long start = System.currentTimeMillis(); Object query = QRuner.query(d); System.out.printf("耗时:%s MS" ,System.currentTimeMillis() - start); System.out.println(); System.out.println(query); //System.out.println(query.getClass()); }*/ ParseMysql parser = new ParseMysql(); //@Test public void parseFBeanTest() { String str = "{name:'user_service', filters:[{col:'a.username',type:'like',value:'lxy'}], orders:[{col:a.`id`,desc: -1},{col:a.`deptName`,desc: 1}], limit:{ps:2,pn:10}}"; //FBean fBean = new Gson().fromJson(str, FBean.class); FBean fBean = convert.convertFrom(FBean.class, str); String[] parse = parser.parse(fBean); System.out.println("count:" + parse[0]); System.out.println("list:" + parse[1]); } @Test public void jdbcTest() { //DbAccount jdbcAccount = new DbAccount("jdbc:mysql://192.168.202.11:3306/gxbii_dev", "root", "eversec123098"); DbAccount dbAccount = new DbAccount(); dbAccount.setCate("mysql"); dbAccount.setUrl("jdbc:mysql://192.168.202.11:3306/gxbii_dev"); dbAccount.setUser("root"); dbAccount.setPwd("eversec123098"); DbKit dbKit = new DbKit(dbAccount, ""); //String sql = "select * from basic_concat limit 1"; String sql = "show databases;"; // find list List list = dbKit.findList(sql, Map.class); System.out.println(list.get(0)); //find count /*long total = dbKit.queryColumn("select count(1) from basic_device", long.class); System.out.println(total); System.out.println(int.class);*/ } @Test public void toAsTest() { Date date = Kv.toAs("2019-03-17 12:11:12", Date.class); System.out.println(date); System.out.println("--------------"); Long aLong = Kv.toAs("34132213", Long.class); System.out.println(aLong); System.out.println("--------------"); Integer integer = Kv.toAs("34132213", Integer.class); System.out.println(integer); System.out.println("--------------"); Short aShort = Kv.toAs("121", short.class); System.out.println(aShort); System.out.println("--------------"); Double aDouble = Kv.toAs("4658132213", double.class); System.out.println(aDouble); System.out.println("--------------"); String s = Kv.toAs("4658132213", String.class); System.out.println(s); System.out.println("--------------"); //Date date1 = Kv.toAs("Sun Mar 17 12:11:12 CST 2019", Date.class); //System.out.println(date1); } //@Test public void buildeDetailTest() { Kv kv = MetaKit.buildeDetail(MetaKit.getMetaService("user_service", "3421432")); System.out.println(kv); } @Test public void upDb$() { /*MetaKit.getMetaServices().forEach(m -> { List shows = new ArrayList<>(); m.getShows().forEach(x -> { shows.add(x.replace(".", "$")); }); m.setShows(shows); m.update(); });*/ //System.out.println("a$id".split("[$]")[0]); System.out.println("x.abx".replace(".", "\\.")); } @Test public void findMaxNum() { int xx = asList("1", "5", "3").stream().filter(x -> !x.isEmpty()).mapToInt(x -> { return Integer.parseInt(x) * 2; }).min().orElseGet(()-> 0); System.out.println(xx); } //@Test public void userCreate() { User user = new User(); user.setUsername("admin"); user.setCreateTime(System.currentTimeMillis()); user.setPwd(User.md5IfNeed("123456")); user.setStatus(1); user.save(); } @Test public void t() { System.out.println(MetaKit.nextAlias()); } @Test public void kvTest() { Map map = new HashMap<>(); map.put("name", "xxxx"); map.put("age", 12); map.put("abx", 123); UserBean user = Kv.toBean(map, UserBean.class); Kv kv = Kv.toKv(user, "name", "abxx=age"); System.out.println(user); System.out.println(kv); } @Test public void tplTest() { TplKit use = TplKit.use(true); use.addTpl(new File(FileKit.rootPath(), "tpl")); //ok String tpl = use.getTpl("db.table_list", Kv.of("catalogs", asList("redbbs"))); System.out.println(tpl); } //@Test public void T() { List metaTables = MetaKit.getMetaTables(); System.out.println(metaTables.size()); } TplKit tplKit = TplKit.use(); // @Test public void buildMethod() { tplKit.addTpl(new File(FileKit.rootPath(), "/tpl/_t.tpl")); //buildMethod("table_link_list", "实体表,包含link信息的列表"); buildMethod("link_info", "关联信息 "); } private void buildMethod(String url, String comment) { String[] arr = url.split("_"); String methodName = ""; for (int i = 0; i < arr.length; i++) { if (i == 0) { methodName = arr[i].toLowerCase(); } else { methodName += toUpperCaseFirst(arr[i].toLowerCase()); } } Kv kv = Kv.of("url", url).set("comment", comment).set("methodName", methodName); String tpl = tplKit.getTpl("service.method", kv, false); System.out.println(tpl); } private String toUpperCaseFirst(String str){ return str.substring(0, 1).toUpperCase() + str.substring(1); } //@Test public void taskRunTest() { TaskEntity entity = TaskEntity.dao.findByKey("23074420"); if (entity != null) { System.out.printf("------------------------%n%s%n------------------------%n", convert.convertTo(TaskKit.taskRun(entity))); } } @Test public void dataToFileTest() { List metaServices = MetaService.dao.find(); MetaKit metaKit = new MetaKit(); try { File file = new File("tmp/metaKit.json"); file.getParentFile().mkdirs(); FileKit.strToFile(convert.convertTo(metaKit), file); } catch (IOException e) { e.printStackTrace(); } } @Test public void readJson() { File file = new File("tmp/MetaService.json"); try { Type type = new TypeToken>() { }.getType(); List list = convert.convertFrom(type, new FileInputStream(file)); System.out.println(list); } catch (IOException e) { e.printStackTrace(); } Class clazz = MetaService.class; //File file = new File(String.format("tmp/%s.json", clazz.getSimpleName())); /* 写入数据到 文件 MetaKit.cacheSave(MetaTable.class); MetaKit.cacheSave(MetaLink.class); MetaKit.cacheSave(MetaService.class); MetaKit.cacheSave(DbAccount.class); MetaKit.cacheSave(SysPlat.class);*/ } //@Test public void cacheMemorySourceTest() { CacheMemorySource source = new CacheMemorySource(); //MetaKit.dcate = "db"; //MetaKit.init(); List list = MetaKit.getMetaTables(); list.forEach(x -> { source.set(x.getKey(), x.getClass(), x); }); MetaTable metaTable = (MetaTable) source.get(list.get(0).getKey(), MetaTable.class); metaTable.setAlias("xxxxx"); metaTable = (MetaTable) source.get(list.get(0).getKey(), MetaTable.class); System.out.println(metaTable); } public List dbKitTest() { DbAccount dbAccount = new DbAccount(); dbAccount.setCate("mysql"); dbAccount.setUrl("jdbc:mysql://192.168.202.11:3306/gxbii_dev"); dbAccount.setUser("root"); dbAccount.setPwd("eversec123098"); DbKit dbKit = new DbKit(dbAccount, ""); String sql = "select platID,platDomain,platIP from basic_domain limit 10"; String countSql = "select count(*) from basic_domain"; // find list List list = dbKit.findList(sql, Map.class); int total = dbKit.queryColumn(countSql, int.class); System.out.println("总记录数:" + total); System.out.println(list); return list; } // 通用导出组件测试 @Test public void exportTest() { List list = dbKitTest(); Kv kv = Kv.of("platID", "平台id") .set("platDomain", "平台域名").set("platIP", "平台IP"); try { Workbook workbook = ExcelKit.exportExcel(list, kv); workbook.write(new FileOutputStream(new File("tmp/basic_domain.xls"))); } catch (Exception e) { e.printStackTrace(); } } @Test public void switchTest() { String a = "2"; switch (a){ case "1": System.out.println(1); case "2": System.out.println(2); case "3": System.out.println(3); case "4": System.out.println(4); } System.out.println("end"); } }