null值从gson.fromJson返回

null值从gson.fromJson返回

问题描述:

我有一些值在我的对象是由值返回null从json转换为对象时,其他人不,我不明白为什么发生这种情况 这里是我的代码转换null值从gson.fromJson返回

OriginalMovie originalMovie = gson.fromJson(jsonString, OriginalMovie.class); 

,这里是我的JSON

{"page":1, 
"results":[{"adult":false, 
"backdrop_path":"/o4I5sHdjzs29hBWzHtS2MKD3JsM.jpg", 
"genre_ids":[878,28,53,12], 
"id":87101,"original_language":"en", 
"original_title":"Terminator Genisys", 
"overview":"The year is 2029. John Connor, leader of the resistance continues the war against the machines.", 
"release_date":"2015-07-01", 
"poster_path":"/5JU9ytZJyR3zmClGmVm9q4Geqbd.jpg", 
"popularity":54.970301, 
"title":"Terminator Genisys","video":false, 
"vote_average":6.4, 
"vote_count":197}], 
"total_pages":11666,"total_results":233312} 

,这里是我的基类(包含结果)

package MovieReviewHelper; 
import java.util.ArrayList; 
import java.util.List; 
public class OriginalMovie 
{ 

    private long page; 
    private List<Result> results = new ArrayList<Result>(); 
    private long totalPages; 
    private long totalResults; 
    public long getPage() 
    { 
     return page; 
    } 
    public void setPage(long page) 
    { 
     this.page = page; 
    } 
    public List<Result> getResults() 
    { 
     return results; 
    } 
    public void setResults(List<Result> results) 
    { 
     this.results = results; 
    } 
    public long getTotalPages() { 
     return totalPages; 
    } 
    public void setTotalPages(long totalPages) 
    { 
     this.totalPages = totalPages; 
    } 
    public long getTotalResults() 
    { 
     return totalResults; 
    } 
    public void setTotalResults(long totalResults) 
    { 
     this.totalResults = totalResults; 
    } 

} 

,这里是我的其他类

package MovieReviewHelper; 

import java.util.ArrayList; 
import java.util.List; 
public class Result { 

    private boolean adult; 
    private String backdropPath; 
    private List<Long> genreIds = new ArrayList<Long>(); 
    private long id; 
    private String originalLanguage; 
    private String originalTitle; 
    private String overview; 
    private String releaseDate; 
    private String posterPath; 
    private double popularity; 
    private String title; 
    private boolean video; 
    private double voteAverage; 
    private long voteCount; 
    public boolean isAdult() 
    { 
     return adult; 
    } 
    public void setAdult(boolean adult) 
    { 
     this.adult = adult; 
    } 
    public String getBackdropPath() 
    { 
     return backdropPath; 
    } 
    public void setBackdropPath(String backdropPath) 
    { 
     this.backdropPath = backdropPath; 
    } 
    public List<Long> getGenreIds() 
    { 
     return genreIds; 
    } 
    public void setGenreIds(List<Long> genreIds) 
    { 
     this.genreIds = genreIds; 
    } 
    public long getId() 
    { 
     return id; 
    } 
    public void setId(long id) 
    { 
     this.id = id; 
    } 
    public String getOriginalLanguage() 
    { 
     return originalLanguage; 
    } 
    public void setOriginalLanguage(String originalLanguage) 
    { 
     this.originalLanguage = originalLanguage; 
    } 
    public String getOriginalTitle() 
    { 
     return originalTitle; 
    } 
    public void setOriginalTitle(String originalTitle) 
    { 
     this.originalTitle = originalTitle; 
    } 
    public String getOverview() 
    { 
     return overview; 
    } 
    public void setOverview(String overview) 
    { 
     this.overview = overview; 
    } 
    public String getReleaseDate() 
    { 
     return releaseDate; 
    } 
    public void setReleaseDate(String releaseDate) 
    { 
     this.releaseDate = releaseDate; 
    } 
    public String getPosterPath() 
    { 
     return posterPath; 
    } 
    public void setPosterPath(String posterPath) 
    { 
     this.posterPath = posterPath; 
    } 
    public double getPopularity() 
    { 
     return popularity; 
    } 
    public void setPopularity(double popularity) 
    { 
     this.popularity = popularity; 
    } 
    public String getTitle() 
    { 
     return title; 
    } 
    public void setTitle(String title) 
    { 
     this.title = title; 
    } 
    public boolean isVideo() 
    { 
     return video; 
    } 
    public void setVideo(boolean video) 
    { 
     this.video = video; 
    } 
    public double getVoteAverage() 
    { 
     return voteAverage; 
    } 
    public void setVoteAverage(double voteAverage) 
    { 
     this.voteAverage = voteAverage; 
    } 
    public long getVoteCount() 
    { 
     return voteCount; 
    } 
    public void setVoteCount(long voteCount) 
    { 
     this.voteCount = voteCount; 
    } 


} 
+0

哪些返回为null? – Sandeep

+0

除4个值(流行,标题,ID,概述) –

+0

以外的所有名称都必须带有下划线? – Sandeep

您的JSON和类变量应该具有相同的名称。 backdrop_path in Json and backdropPath in class will not work