0

有大佬在java后端用过【protobuf】吗?想请教几个问题,【protobuf文件生成的类会用到业务层吗?】【数据库模型类要怎么和protobuf类进行相互之间的转化呢?】

我目前的理解是,protobuf类主要用于接口的交互,也就是Controller/gRPC层,但不用于业务层。主要希望业务层不要依赖于protobuf,而更希望使用POJO进行处理。这样实现的话,Controller接收到数据之后,就需要设法转化为POJO,再将POJO传入业务层进行处理。对于数据库模型类方面,这里肯定就不用protobuf类了,因为这个类实现了很多的方法,而且数据库的模型和接口类的模型似乎不总是相同的。不知道这样理解是否正确呢?

如果需要将ProtoBean与POJO之间进行相互的转化,有什么简便直接的方法吗?

2019-08-15 提问
1 个回答
0

不会下层到业务层。
用MVC的理论来说,Protobuf只会出现在Controller层,主要完成两个工作:

  1. 接收外部输入解码成合法的Java对象,然后封装DTO传给Service层
  2. 接收Service层返回的DTO结果对象,包装为Protobuf,然后发送出去

如果想偷懒一点的话,可以直接传,但是真心不建议这个偷懒,java的优势就是分层开发

撰写答案

推广链接