作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有一个类,我希望对其进行 protobuf。在该类中,其中一个字段是枚举(在它自己的类中)。我可以避免在 .proto 文件中定义相同的枚举值吗?或者我是否必须手动确保 java 代码中的枚举定义与 .proto 文件中的相同?
java代码:
public enum Location {
UNDEF(0),HOME(1), WORK(2);
...
}
.proto文件对应代码:
message Address{
enum location {
UNDEF = 0;
HOME = 1;
WORK = 2;
}
optional location addressLocation;
...
}
最佳答案
保持此类同步的最佳解决方案通常是代码生成;确定您的哪个定义是单点真理,并根据它创建其他定义。 Protocol Buffer 有built-in support for Java code generation具有漂亮的功能,例如自动处理重复的枚举值。
关于java - 如何在 Java 代码和 .proto 文件之间共享 Enum 值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19130965/
我是一名优秀的程序员,十分优秀!