我正在处理需要从不同数据源/格式创建对象的项目。我想知道组织源代码以使其变得容易的最佳方法是什么。
假设我有 User 类,我希望能够从数据库和 JSON 中的数据创建对象。它的目的是让我的应用程序的用户在线和离线浏览数据。我正在使用 GSON 和 ORMLite。此外,JSON 和数据库中的字段可能不同,但“主要”字段是相同的。创建包含来自 JSON 和数据库的所有属性/字段的类是个好主意吗?类似于下面的类:
@DatabaseTable(tableName = "user", daoClass = UserDaoImpl.class)
public class User {
public static final String ID_FIELD_NAME = "id";
public static final String USER_LOGIN_FIELD_NAME = "login";
public static final String USER_EMAIL_FIELD_NAME = "email";
public static final String SERIALIZED_COUNTRY_FIELD_NAME = "user_county";
// DB & JSON
@DatabaseField(generatedId = true, columnName = ID_FIELD_NAME)
int id;
// DB & JSON
@DatabaseField(columnName = USER_LOGIN_FIELD_NAME)
String login;
//DB & JSON
@DatabaseField(columnName = USER_EMAIL_FIELD_NAME)
String email;
//Only JSON
@SerializedName(SERIALIZED_COUNTRY_FIELD_NAME)
String country;
public Track() {
}
}