GraphQLScalarType ,可以理解为java 语言中的类型、对象。可以通过extends GraphQLScalarType实现自定义。
自定义分为两部分:
java 代码如下
@Component
public class MyStringScalarType extends GraphQLScalarType {
private static final String DATE_FORMAT = "yyyy-MM-dd HH:mm";
public MyStringScalarType() {
super("MyString", "MyString value", new Coercing<String, String>() {
@Override
public String serialize(Object o) {
return o.toString();
}
@Override
public String parseValue(Object o) {
String value = String.valueOf(o);
return value;
}
@Override
public String parseLiteral(Object o) {
String value = String.valueOf(o);
return value;
}
});
}
}
本质上可以是任意java 对象
scheme 定义如下:
scalar MyString
type Post {
id: ID!
text: String
comments: [Comment!]!
random: MyString
}
注意 要定义:scalar MyString