Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

infrastructure 中多个查询参数该怎么封装 #177

Closed
lslvxy opened this issue Feb 7, 2021 · 4 comments
Closed

infrastructure 中多个查询参数该怎么封装 #177

lslvxy opened this issue Feb 7, 2021 · 4 comments

Comments

@lslvxy
Copy link

lslvxy commented Feb 7, 2021

按照cola规范 Qry定义在client 模块
infrastructure 和domain 不依赖client
gateway中的查询多个参数的话封装成一个Object,
那么要复制一遍Qry么

@HallenW
Copy link

HallenW commented Feb 20, 2021

同问,都发展到4.0了,demo还是这样子

@lslvxy
Copy link
Author

lslvxy commented Feb 20, 2021

同问,都发展到4.0了,demo还是这样子

我现在还是先依赖了client
还有个问题我写了两个DictQuery extends Query和DictPageQuery extends PageQuery

字段都是一样的,不知道有没有什么好的办法复用下

而且在QryExe 里面的参数是DictPageQuery 但是用pagehelper查询的话用的是DictQuery 还是需要BeanUtil来Copy一下

这样操作感觉不太对

另外一个问题 Domain 层是可选的,如果不要的话 ,那么Gateway查询的DO是直接转为CO这样的么

如果再定义一层Domain 那么需要先DO转Domain ,然后Domain再转CO的么

@HallenW
Copy link

HallenW commented Feb 20, 2021

同问,都发展到4.0了,demo还是这样子

我现在还是先依赖了client
还有个问题我写了两个DictQuery extends Query和DictPageQuery extends PageQuery

字段都是一样的,不知道有没有什么好的办法复用下

而且在QryExe 里面的参数是DictPageQuery 但是用pagehelper查询的话用的是DictQuery 还是需要BeanUtil来Copy一下

这样操作感觉不太对

另外一个问题 Domain 层是可选的,如果不要的话 ,那么Gateway查询的DO是直接转为CO这样的么

如果再定义一层Domain 那么需要先DO转Domain ,然后Domain再转CO的么

1.在java中想复用代码无非就三种方式,继承,接口,组合。不过为啥QryExe 里面的参数是DictPageQuery 但是用pagehelper查询的话又用的是DictQuery ,pagehelper就不能继续用DictPageQuery么
2.根据cola作者提供的sample来看,不管要不要domain层,都是在app层将Entity/DO转为CO的,所以
①如果不要domain层,在Gateway层直接返回DO即可,然后在app层将DO转为CO
②如果要domain层,在Gateway层将DO转为Entity,然后在app层将Entity转为CO

@lslvxy
Copy link
Author

lslvxy commented Feb 20, 2021

同问,都发展到4.0了,demo还是这样子

我现在还是先依赖了client
还有个问题我写了两个DictQuery extends Query和DictPageQuery extends PageQuery
字段都是一样的,不知道有没有什么好的办法复用下
而且在QryExe 里面的参数是DictPageQuery 但是用pagehelper查询的话用的是DictQuery 还是需要BeanUtil来Copy一下
这样操作感觉不太对
另外一个问题 Domain 层是可选的,如果不要的话 ,那么Gateway查询的DO是直接转为CO这样的么
如果再定义一层Domain 那么需要先DO转Domain ,然后Domain再转CO的么

1.在java中想复用代码无非就三种方式,继承,接口,组合。不过为啥QryExe 里面的参数是DictPageQuery 但是用pagehelper查询的话又用的是DictQuery ,pagehelper就不能继续用DictPageQuery么
2.根据cola作者提供的sample来看,不管要不要domain层,都是在app层将Entity/DO转为CO的,所以
①如果不要domain层,在Gateway层直接返回DO即可,然后在app层将DO转为CO
②如果要domain层,在Gateway层将DO转为Entity,然后在app层将Entity转为CO

Gateway中不需要pageIndex和pageSize参数 ,所以才用了DictQuery而不是DictPageQuery,但是adaptar传参是要的

Gateway虽然可以使用DictPageQuery作为参数,但是感觉有点冗余

还有一点 Gateway如果直接返回DO那么domain层需要依赖infra层
如果返回CO的话那需要依赖client层 然后转换需要在infra层实现

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants