দি ক্ষেত্রের নামকরণ কৌশল ৷ Gson-এ কাস্টম ফিল্ড নামকরণ প্রদানের একটি প্রক্রিয়া। এটি ক্লায়েন্ট কোডটিকে একটি নির্দিষ্ট কনভেনশনে ক্ষেত্রের নাম অনুবাদ করতে দেয় যা সাধারণ জাভা ক্ষেত্র ঘোষণার নিয়ম হিসাবে সমর্থিত নয়। translateName() পদ্ধতিটি “pre__ স্ট্রিং সহ প্রতিটি ক্ষেত্রের নামের উপসর্গ করবে ”।
নীচের উদাহরণে, আমরা কাস্টম ফিল্ড নামকরণ কৌশলটি বাস্তবায়ন করতে পারি।
উদাহরণ
import java.lang.reflect.Field;
import com.google.gson.*;
public class GsonFieldNamingStrategyTest {
public static void main(String[] args) {
Employee emp = new Employee();
emp.setEmpId(115);
emp.setFirstName("Adithya");
emp.setLastName("Jai");
CustomFieldNamingStrategy customFieldNamingStrategy = new CustomFieldNamingStrategy();
GsonBuilder gsonBuilder = new GsonBuilder();
Gson gson = gsonBuilder.setFieldNamingStrategy(customFieldNamingStrategy).create();
String result = gson.toJson(emp);
System.out.println(result);
}
// Custom FieldNamingStrategy
private static class CustomFieldNamingStrategy implements FieldNamingStrategy {
@Override
public String translateName(Field field) {
return "pre_" + field.getName();
}
}
}
// 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;
}
} আউটপুট
{"pre_empId":115,"pre_firstName":"Adithya","pre_lastName":"Jai"}