FieldNamingPolicy可用于定义 JSON 字段名称的一些标准命名约定,它可以与GsonBuilder结合使用来配置Gson实例以将 Java 字段名称正确翻译为所需的 JSON 字段名称。我们可以使用GsonBuilder的setFieldNamingPolicy()方法,在序列化和反序列化时为对象的字段配置特定的命名策略策略。
Gson通过以下字段命名策略支持各种字段命名需求
import com.google.gson.*; import java.sql.Date; import java.time.LocalDate; public class FieldNamingPolicyTest { public static void main(String[] args) { <strong>Gson </strong>gson = new<strong> GsonBuilder()</strong><strong>.setPrettyPrinting(</strong>).<strong>setDateFormat</strong>("yyyy-MM- dd") .<strong>setFieldNamingPolicy(FieldNamingPolicy.LOWER_CASE_WITH_DASHES).create(); </strong> Person p = new Person("Raja", "Ramesh", 30, Date.valueOf(LocalDate.of(1988, 1, 1))); String jsonStr = gson.<strong>toJson</strong>(p); System.out.println(jsonStr); } } <strong>// Person class</strong> class Person { private String fistName; private String lastName; private int _age; private Date dateOfBirth; public Person(String fistName, String lastName, int _age, Date dateOfBirth) { super(); this.fistName = fistName; this.lastName = lastName; this._age = _age; this.dateOfBirth = dateOfBirth; } }
<strong>{</strong> <strong> "fist-name": "Raja", "last-name": "Ramesh", "_age": 30, "date-of-birth": "1988-01-01" }</strong>
以上是如何在Java中定义JSON字段名称的命名约定?的详细内容。更多信息请关注PHP中文网其他相关文章!