public class Article {
@Id
@GeneratedValue(strategy=GenerationType.AUTO)
private Integer id;
@ManyToOne(cascade=CascadeType.REFRESH,optional=false)
@JoinColumn(name="acid")
private ArticleClass ac;
@Column(length=80,nullable=false)
private String title;
}public class ArticleClass{ @Id
@GeneratedValue(strategy=GenerationType.AUTO)
private Integer id;
@Column(length=36,nullable=false)
private String name;
@Column(length=200)
private String note;
@Column(nullable=false)
private Boolean visible=true;
@OneToMany(cascade={CascadeType.REFRESH,CascadeType.REMOVE},mappedBy="parent")
private Set<ArticleClass> childs = new HashSet<ArticleClass>();
@ManyToOne(cascade=CascadeType.REFRESH)
@JoinColumn(name="parentid")
private ArticleClass parent;
@OneToMany(mappedBy="ac", cascade=CascadeType.REMOVE)
private Set<Article> articles = new HashSet<Article>();
}
List<Article> lists = getResultlist();
for(Article article : lists){
System.out.println(article.getId);
System.out.println(article.getAc().getName());
}//到这一步肯定是对的,能获取数据
//下面死活不行,出错,大致提示是反射出错.
Type type = new TypeToken<List<Article>>(){}.getType();
Json result = gson.toJson(lists,type);
出错,貌似出错应该跟article 实体跟articleclass有关系。总之解决问题就行,哪怕不用GoogleGson。用其他的。除了自己组拼字符串。谁能帮忙解决一下,
@Id
@GeneratedValue(strategy=GenerationType.AUTO)
private Integer id;
@ManyToOne(cascade=CascadeType.REFRESH,optional=false)
@JoinColumn(name="acid")
private ArticleClass ac;
@Column(length=80,nullable=false)
private String title;
}public class ArticleClass{ @Id
@GeneratedValue(strategy=GenerationType.AUTO)
private Integer id;
@Column(length=36,nullable=false)
private String name;
@Column(length=200)
private String note;
@Column(nullable=false)
private Boolean visible=true;
@OneToMany(cascade={CascadeType.REFRESH,CascadeType.REMOVE},mappedBy="parent")
private Set<ArticleClass> childs = new HashSet<ArticleClass>();
@ManyToOne(cascade=CascadeType.REFRESH)
@JoinColumn(name="parentid")
private ArticleClass parent;
@OneToMany(mappedBy="ac", cascade=CascadeType.REMOVE)
private Set<Article> articles = new HashSet<Article>();
}
List<Article> lists = getResultlist();
for(Article article : lists){
System.out.println(article.getId);
System.out.println(article.getAc().getName());
}//到这一步肯定是对的,能获取数据
//下面死活不行,出错,大致提示是反射出错.
Type type = new TypeToken<List<Article>>(){}.getType();
Json result = gson.toJson(lists,type);
出错,貌似出错应该跟article 实体跟articleclass有关系。总之解决问题就行,哪怕不用GoogleGson。用其他的。除了自己组拼字符串。谁能帮忙解决一下,
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货