1.Volley和Gson结合使用——Volley适用于小型数据,多次的请求,使用Gson解析时,服务器数据的键值不能包含常用的标识符如:class.....等,这些就需要与服务端小伙伴商量
这样也可以解决@SuppressWarnings ("class")
private String myClass;//这样使用就Gson可以解决Android关键字问题了,
public class MainActivity extends Activity {
private String url = "https://网络请求的IP";
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
RData();
}
private void RData() {
StringRequest request = new StringRequest(url, new Listener<String>() {
@Override
public void onResponse(String arg0) {
Log.i("info", arg0);
dealData(arg0);
}
}, new Response.ErrorListener() {
@Override
public void onErrorResponse(VolleyError arg0) {
// TODO Auto-generated method stub
}
});
new Volley().newRequestQueue(getApplicationContext()).add(request);
}
private void dealData(String result) {
Gson gson = new Gson();
//Book是我们自己创建的解析类
Book book = gson.fromJson(result, Book.class);
Log.i("info", book.getTitle() + ":" + book.getPublisher() + ":"
+ book.getTags().size());
}
}
2.Volley与FastGson——FastGson,主要针对实体类集合,性能比Gson高
private void dealData(String result) {
Book book = JSON.parseObject(result, Book.class);//对象
List<Book> books = JSON.parseObject(result,
new TypeReference<List<Book>>() {
});//对象集合
3.在特定情况下可以根据自己的需要使用JsonObject