nebula-contrib / ngbatis

NGBATIS is a database ORM framework base NebulaGraph + spring-boot, which takes advantage of the mybatis’ fashion development, including some de-factor operations in single table and vertex-edge, like mybatis-plus. NGBATIS 是一款针对 NebulaGraph + Springboot 的数据库 ORM 框架。借鉴于 MyBatis 的使用习惯进行开发。https://graph-cn.github.io/ngbatis-docs/
https://nebula-contrib.github.io/ngbatis/
Apache License 2.0
132 stars 42 forks source link

springboot2.7.7 引入ngbatis1.1.3 启动报错 #167

Closed LETMECALM closed 1 year ago

LETMECALM commented 1 year ago

没有找到原因,求助!!

CorvusYe commented 1 year ago

可以查一下继承了基类的DAO使用的主键类型有没有指定 extends NebulaDaoBasic<FileInfo, 主键类型>

LETMECALM commented 1 year ago
image

项目中还用到mysql,orm框架用的Pigx,生成器会自动exends PigxBaseMapper ,这样应该指定不了主键类型,这两个框架能兼容共用吗

CorvusYe commented 1 year ago

可以兼容使用,不过 xml 的位置需要重新指定,避免冲突

cql:
  parser:
    # 更换开发者自定义的 xml 所在位置
    mapper-locations: ng-mapper/**/*.xml # 默认为 mapper/**/*.xml
LETMECALM commented 1 year ago
image

改了配置还是同样的错误,应该是没生效,我配置有问题吗 ngmapper文件夹里面是空的

LETMECALM commented 1 year ago

自定义mapper位置在 docs 里面有吗,我怎么没找到

CorvusYe commented 1 year ago

有的,https://graph-cn.github.io/ngbatis-docs/step-forward-docs/advanced-configuration.html 当前仓库里的:https://github.com/nebula-contrib/ngbatis/blob/master/docs/zhCn/md/step-forward-docs/advanced-configuration.md

cql:
  parser:
    # 更换开发者自定义的 xml 所在位置
    mapper-locations: ng-mapper/**/*.xml # 默认为 mapper/**/*.xml

nebula:
   ...
LETMECALM commented 1 year ago
image

路径没找到,配置里要写绝对路径吗 ngmapper 里必须要有xml文件吗

CorvusYe commented 1 year ago

不需要写绝对路径哦 截图中ngmapper的路径是:com/nlz/.../ngmapper 配置里的路径是需要将 ngmapper 建到 resources 目录下 可以没有 xml 文件

LETMECALM commented 1 year ago
image

resources 下也建了ngmapper 文件夹,也是报错的

CorvusYe commented 1 year ago

大意了😂 刚刚debug了一下,还是需要有xml文件

LETMECALM commented 1 year ago

可以了,没有xml文件应该也可以启动(一点拙见,哈哈)

CorvusYe commented 1 year ago

可以了,没有xml文件应该也可以启动(一点拙见,哈哈)

是的,直觉上也应该是这样。不过之前没留意这个资源加载的机制,没文件直接认为 ngmapper/ 是一个文件资源了,而没有当做目录获取空列表。回头我再看看怎么改合适。 发现了新问题,赞赞赞~