我在 Java 中有两个 POJO:Movie在我的数据库Movie中使用,另一个用于从请求到网络服务的类似结果。
package .service
public class Movie{
@Serialized("Title")
private String title;
@Serialized("Year")
private String year;
@Serialized("Poster")
private String poster
}
package .database
public class Movie{
@ColumnInfo(name = "title")
private String title;
@ColumnInfo(name = "year")
private String year;
@ColumnInfo(name = "poster")
private String poster;
}
我通过创建一个执行转换的类解决了这个问题:
public class MovieObjectAdapter {
public static List<service.Movie> castFrom(List<database.Movie>moviesDatabase){
List<service.Movie> moviesModel = new ArrayList<>();
for (database.Movie movie:
moviesDatabase) {
service.Movie movieModel = new service.Movie();
movieModel.setTitle(movie.getTitle());
movieModel.setPoster(movie.getPoster());
movieModel.setYear(movie.getYear());
moviesModel.add(movieModel);
}
return moviesModel;
}
}
但我对此不太满意。那么您可以推荐我使用哪种设计模式?
编辑:
哦,对不起,我忘记了一点细节,我的服务有另一个属性名称,我的数据库,这就是我有两个 pojo 的原因。很抱歉省略了这一点。
慕运维8079593
相关分类