Spring Android ve Gson


Spring Android, Spring topluluğunun Android native uygulamaları geliştirilmesi için sağladığı kütüphanelerden oluşuyor. Spring Android bir web kütüphanesi değil, Android projelerine eklenen bir kütüphanedir.

Gson ise Google’ın Java dünyasına kazandırdığı başarılı kütüphanlerden biri. Objeleri JSON’a; JSON’ı da objelere çok hızlı şekilde çevirebiliyor.

Bu konuda bir örnek sunmak için spring-andoid adında bir proje yaptım. Bu proje Android 2.2 için oluşturulan bir projedir.
Projede lib dizini oluşturarak gson-2.0.jar, spring-android-core-1.0.0.M4.jar ve spring-android-rest-template-1.0.0.M4.jar kütüphanelerini ekledim.




Daha sonra bu kütüphaneleri proje üzerine sağ tuş ile tıklayıp Java Build Path -> Libraries tabından Add JARs.. diyerek projeye gösterdim.








Artık bu kütüphanelerin sağladığı sınıfları kullanabiliriz.

Akademik Bilişim 2012 için hazırladığım sunucu taraflı API’de her bir oturum hakkında bilgileri JSON olarak sunuyorum.

Bu sunulan JSON aslında Oturum adlı bir Java sınıfının JSON’a dönüşmüş halidir.

Mesela A salonundaki 1 oturumda hangi sunumların olduğunu öğrenmek için şöyle bir talep gönderebilirsiniz:

http://www.gelecekonline.com/oturum?salon=A&oturumSira=1

Dönen sonuç aşağıdaki gibidir:




Sunucu tarafındaki Oturum sınıfının aynısını Android tarafında da yapıyorum.






Bu sınıftan dönen kaydı çekmek için Android projesine bir Button ve altına TextView ekledim:




Butonun onClick eventı için Activity sınıfında bir method yaptım:

public void getObject(View v){

Oturum oturumList=null;

RestTemplate restTemplate = new RestTemplate();
    restTemplate.setRequestFactory(new HttpComponentsClientHttpRequestFactory());
    List<HttpMessageConverter<?>> messageConverters = new ArrayList<HttpMessageConverter<?>>();
    Gson gson = new GsonBuilder().create();
    GsonHttpMessageConverter messageConverter = new GsonHttpMessageConverter();
    messageConverter.setGson(gson);
    messageConverters.add(messageConverter);
    restTemplate.setMessageConverters(messageConverters);
    try {
    oturumList = restTemplate.getForObject(new URI(URL), Oturum.class);
} catch (RestClientException e) {
Log.e("MainActivity", e.getMessage());
} catch (URISyntaxException e) {
Log.e("MainActivity", e.getMessage());
}
    if(oturumList!=null)
    for (Oturum oturum :oturumList.getOturumList()) {
    metinText.setText(oturum.getBaslik());
}
}


Bu method aslında bir Spring Android RestTemplate yaratıyor ve messageConverters ‘ına GsonHttpMessageConverter set ediyor.

Bu örnek projeyi ve Akademik Bilişim 2012 için hazırladığım proje kodlarını aşağıdaki adreslerden indirebilirsiniz:

http://gomobil.in/spring-android.zip
http://gomobil.in/ab2012.zip


Bu sayfa 871 kere okundu.
2012

Ocak Şubat Mart Mayıs

2011

Ocak Şubat Nisan Haziran Temmuz Ekim

2010

Ocak Şubat Nisan Haziran

2009

Ocak Şubat Nisan Mayıs Haziran Temmuz Ağustos Eylül Ekim

2008

Ocak Nisan Haziran Temmuz Ağustos Eylül Ekim Kasım Aralık

2007

Şubat Mart Nisan Mayıs Haziran Temmuz Ağustos Eylül Ekim Kasım Aralık

2006

Ocak Şubat Nisan Ağustos

2005

Ocak Şubat Mart Nisan Mayıs Haziran Temmuz Ağustos Eylül Ekim Kasım Aralık

2004

Ocak Şubat Nisan Ağustos Eylül Ekim Kasım Aralık

2003

Ocak Şubat Mart Nisan Mayıs Haziran Temmuz Ağustos Eylül Ekim Kasım Aralık

2002

Ağustos Eylül Ekim Kasım Aralık



Gerçek bir arkadaş, iki gövdede yaşayan tek bir ruhtur.
Aristo


Bu site açık kaynak kodlu uygulamalar ve kütüphaneler kullanılarak yapılan mblog içerik yönetim sistemi ile sunulmaktadır.
© 2002 - 2012 Muharrem Taç
Sürüm : 5.4.8