package org.yeshi.utils.generater;
|
|
import org.yeshi.utils.FreemarkerUtils;
|
import org.yeshi.utils.generater.entity.admin.AdminGeneraterInfo;
|
import org.yeshi.utils.generater.vo.ExceptionVO;
|
import org.yeshi.utils.generater.vo.admin.controller.AdminControllerInfoVO;
|
import org.yeshi.utils.generater.vo.admin.page.FormAddInfoVO;
|
import org.yeshi.utils.generater.vo.admin.page.FormUpdateInfoVO;
|
import org.yeshi.utils.generater.vo.admin.page.ListInfoVO;
|
import org.yeshi.utils.generater.vo.dao.MongoDBDaoVO;
|
import org.yeshi.utils.generater.vo.dao.MyBatisDBDaoVO;
|
import org.yeshi.utils.generater.vo.service.QueryVO;
|
import org.yeshi.utils.generater.vo.service.ServiceImplInfoVO;
|
import org.yeshi.utils.generater.vo.service.ServiceInfoVO;
|
|
import java.io.IOException;
|
import java.io.InputStream;
|
import java.util.HashMap;
|
import java.util.Map;
|
|
public class GeneraterUtil {
|
|
public static String createException(ExceptionVO vo) throws IOException {
|
String result = FreemarkerUtils.generateInputStream(vo, GeneraterUtil.class.getClassLoader().getResourceAsStream("generater/exception.template"));
|
System.out.println(result);
|
return result;
|
}
|
|
public static String createMongoDBDao(MongoDBDaoVO vo) throws IOException {
|
String result = FreemarkerUtils.generateInputStream(vo, GeneraterUtil.class.getClassLoader().getResourceAsStream("generater/dao/mongoDBDao.template"));
|
System.out.println(result);
|
return result;
|
}
|
|
|
public static String createMybatisDBMapper(MyBatisDBDaoVO vo) throws IOException {
|
String result = FreemarkerUtils.generateInputStream(vo, GeneraterUtil.class.getClassLoader().getResourceAsStream("generater/dao/mybatisDBDao.template"));
|
System.out.println(result);
|
return result;
|
}
|
|
public static String createMybatisDBMapperXML(MyBatisDBDaoVO vo) throws IOException {
|
String result = FreemarkerUtils.generateInputStream(vo, GeneraterUtil.class.getClassLoader().getResourceAsStream("generater/dao/mybatisDBXML.ftl"));
|
System.out.println(result);
|
return result;
|
}
|
|
|
public static String createQuery(QueryVO vo) throws IOException {
|
String result = FreemarkerUtils.generateInputStream(vo, GeneraterUtil.class.getClassLoader().getResourceAsStream("generater/service/queryVO.ftl"));
|
System.out.println(result);
|
return result;
|
}
|
|
public static String createService(ServiceInfoVO vo) throws IOException {
|
String result = FreemarkerUtils.generateInputStream(vo, GeneraterUtil.class.getClassLoader().getResourceAsStream("generater/service/service.template"));
|
System.out.println(result);
|
return result;
|
}
|
|
public static String createServiceImpl(ServiceImplInfoVO vo) throws IOException {
|
String result = FreemarkerUtils.generateInputStream(vo, GeneraterUtil.class.getClassLoader().getResourceAsStream("generater/service/serviceImpl.template"));
|
System.out.println(result);
|
return result;
|
}
|
|
|
public static String createAdminController(AdminControllerInfoVO vo) throws IOException {
|
String result = FreemarkerUtils.generateInputStream(vo, GeneraterUtil.class.getClassLoader().getResourceAsStream("generater/admin/adminController.template"));
|
System.out.println(result);
|
return result;
|
}
|
|
|
private static Map<String, InputStream> getAdminIncludePageMap() {
|
//将所有的控件模板加载进去
|
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",
|
"admin/update.ftl",
|
"admin/list.ftl"
|
};
|
Map<String, InputStream> map = new HashMap<>();
|
for (String st : template) {
|
map.put(st, GeneraterUtil.class.getClassLoader().getResourceAsStream("generater/" + st));
|
}
|
return map;
|
}
|
|
public static String createAdminPageForUpdate(AdminGeneraterInfo vo) throws IOException {
|
Map<String, InputStream> map = getAdminIncludePageMap();
|
String result = FreemarkerUtils.generateInputStream(new FormUpdateInfoVO.Builder().setAdminInfo(vo).build(), "admin/update.ftl", map);
|
System.out.println(result);
|
return result;
|
}
|
|
public static String createAdminPageForAdd(AdminGeneraterInfo vo) throws IOException {
|
Map<String, InputStream> map = getAdminIncludePageMap();
|
String result = FreemarkerUtils.generateInputStream(new FormAddInfoVO.Builder().setAdminInfo(vo).build(), "admin/add.ftl", map);
|
System.out.println(result);
|
return result;
|
}
|
|
public static String createAdminPageForList(AdminGeneraterInfo vo) throws IOException {
|
Map<String, InputStream> map = getAdminIncludePageMap();
|
String result = FreemarkerUtils.generateInputStream(new ListInfoVO.Builder().setAdminInfo(vo).build(), "admin/list.ftl", map);
|
System.out.println(result);
|
return result;
|
}
|
|
public static void main(String[] args) {
|
InputStream input = GeneraterUtil.class.getClassLoader().getResourceAsStream("generater/dao/mybatisDBDao.template");
|
System.out.println(input);
|
}
|
|
|
}
|