
Data Structure
Networking
RDBMS
Operating System
Java
MS Excel
iOS
HTML
CSS
Android
Python
C Programming
C++
C#
MongoDB
MySQL
Javascript
PHP
- Selected Reading
- UPSC IAS Exams Notes
- Developer's Best Practices
- Questions and Answers
- Effective Resume Writing
- HR Interview Questions
- Computer Glossary
- Who is Who
FieldNamingPolicy Enum Using Gson in Java
Gson library provides the naming conventions as part of enum FieldNamingPolicy. We can set the field naming policy using the setFieldNamingPolicy() method of the GsonBuilder class.
FieldNamingPolicy enum Constants
- IDENTITY − Using this naming policy, the field name is unchanged.
- LOWER_CASE_WITH_DASHES − Using this naming policy, modify the Java Field name from its camel-cased form to a lower case field name where each word is separated by a dash (-).
- LOWER_CASE_WITH_UNDERSCORES − Using this naming policy, modify the Java Field name from its camel-cased form to a lower case field name where each word is separated by an underscore (_).
- UPPER_CAMEL_CASE − Using this naming policy, ensure that the first “letter” of the Java field name is capitalized when serialized to its JSON form.
- UPPER_CAMEL_CASE_WITH_SPACES − Using this naming policy, ensure that the first “letter” of the Java field name is capitalized when serialized to its JSON form and the words will be separated by a space.
Syntax
public enum FieldNamingPolicy extends Enum<FieldNamingPolicy> implements FieldNamingStrategy
Example
import com.google.gson.FieldNamingPolicy; import com.google.gson.Gson; import com.google.gson.GsonBuilder; public class GsonFieldNamingPolicyTest { public static void main(String[] args) { Employee emp = new Employee(); emp.setEmpId(115); emp.setFirstName("Raja"); emp.setLastName("Ramesh"); GsonBuilder gsonBuilder = new GsonBuilder(); Gson gson1 = gsonBuilder.setFieldNamingPolicy(FieldNamingPolicy.LOWER_CASE_WITH_DASHES).create(); String result1 = gson1.toJson(emp); System.out.println("LOWER_CASE_WITH_DASHES: " + result1); Gson gson2 = gsonBuilder.setFieldNamingPolicy(FieldNamingPolicy.LOWER_CASE_WITH_UNDERSCORES).create(); String result2 = gson2.toJson(emp); System.out.println("LOWER_CASE_WITH_UNDERSCORES: " + result2); Gson gson3 = gsonBuilder.setFieldNamingPolicy(FieldNamingPolicy.UPPER_CAMEL_CASE).create(); String result3 = gson3.toJson(emp); System.out.println("UPPER_CAMEL_CASE: " + result3); Gson gson4 = gsonBuilder.setFieldNamingPolicy(FieldNamingPolicy.UPPER_CAMEL_CASE_WITH_SPACES).create(); String result4 = gson4.toJson(emp); System.out.println("UPPER_CAMEL_CASE_WITH_SPACES: " + result4); Gson gson5 = gsonBuilder.setFieldNamingPolicy(FieldNamingPolicy.IDENTITY).create(); String result5 = gson5.toJson(emp); System.out.println("IDENTITY: " + result5); } } // Employee class class Employee { private int empId; private String firstName; private String lastName; public int getEmpId() { return empId; } public void setEmpId(int empId) { this.empId = empId; } public String getFirstName() { return firstName; } public void setFirstName(String firstName) { this.firstName = firstName; } public String getLastName() { return lastName; } public void setLastName(String lastName) { this.lastName = lastName; } }
Output
LOWER_CASE_WITH_DASHES: {"emp-id":115,"first-name":"Raja","last-name":"Ramesh"} LOWER_CASE_WITH_UNDERSCORES: {"emp_id":115,"first_name":"Raja","last_name":"Ramesh"} UPPER_CAMEL_CASE: {"EmpId":115,"FirstName":"Raja","LastName":"Ramesh"} UPPER_CAMEL_CASE_WITH_SPACES: {"Emp Id":115,"First Name":"Raja","Last Name":"Ramesh"} IDENTITY: {"empId":115,"firstName":"Raja","lastName":"Ramesh"}
Advertisements