mybatis 一对多,一对一代码生成器

mybatis 一对多,一对一代码生成器

源码地址 https://gitee.com/youngboyvip/graphqljs

这是一个 类 graphql 语法 + 简单sql语法的解析器+代码生成器

语法解析器使用PEGjs生成

代码生成器支持生成

  • mapper
  • resultMapper
  • model
  • select

DSL在线体验

http://youngboyvip.gitee.io/youngboy/mybatis.html

效果图

image.png

语法示例

var parser = require('graphql');

var query = `
  select 
findByRootIdOrClassId(type:"com.fawkes.yhsw.common.model.TplClass") {
  b.id Long,
  b.class_name:className String,
  b.p_name:pName String,
  c.rootId Long,
  components.config(type:"com.fawkes.yhsw.common.model.TemplateModuleInfo",fetch:"list"){
    a.id Long,
    a.component:component String,
    a.name String,
    a.page_type:pageType String,
    a.thumbnail String,
    a.range_index:rangeIndex Integer
  }
} 
from
    tpl_class_info b
    JOIN tpl_class_rel c ON b.id = c.classId
    JOIN template_module_info a ON a.id = c.modId
`;

var ast = parser.parse(query);
// ast is a plain JS object
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。