8.7w+
社区成员
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.TypeReference;
public class SS
{
public static void main(String[] args)
{
SS s = new SS();
Book book = s.StrToObject();
System.out.println(book.toString());
}
public <T> T StrToObject()
{
Book book = new Book();
book.setName("java");
book.setAuthor("Tom");
book.setAuthor("100");
String str = JSON.toJSONString(book);
T t = JSON.parseObject(str, new TypeReference<T>()
{
});
Book newbook = JSON.parseObject(str, Book.class);
System.out.println(newbook.toString()); // 这样是可以的
return t;
}
}
class Book
{
private String name;
private String author;
private int price;
public String getName()
{
return name;
}
public void setName(String name)
{
this.name = name;
}
public String getAuthor()
{
return author;
}
public void setAuthor(String author)
{
this.author = author;
}
public int getPrice()
{
return price;
}
public void setPrice(int price)
{
this.price = price;
}
@Override
public String toString()
{
return "Book [name=" + name + ", author=" + author + ", price=" + price + "]";
}
}
Book [name=java, author=100, price=0]
Exception in thread "main" java.lang.ClassCastException: com.alibaba.fastjson.JSONObject cannot be cast to Book
at SS.main(SS.java:10)