Bazen kullanıcılara raporları Microsoft Office Dökümanıları (Word, Excel, Powerpoint vs.) olarak vermemiz istenir. Bunun için Java’da kullanabilceğimiz bir çok kütüphane mevcut. Bana göre bu kütüphanelerden en iyisi Apache grubunun yazmış olduğu POI isimli kütüphane. Poi’nin destek verdiği döküman formatları, Excel, Word, Powerpoint, OpenXML4J, OLE2 Filesystem, OLE2 Document Props, Outlook, Visio ve Publisher. Bu formattaki dokümanları okuyabilir ve yazabiliriz.
Apachi Poi’nin 3.2 versiyonunu COMPASS adlı bir projede kullanmaktayım.Şirkette Excel 2007 kullanılsada, Poi Excel satırlarına erişimde short türünden değişken kullandığı için mecburen 32767 satır kullanabiliyorum (Short.MIN_VALUE == -32767 , Short.MAX_VALUE == 32767). İlk başlarda bu pek bir sorun yaratmasa da rapor olarak sunulan veri arttırkça satır sayıları yetmemeye başladı. Bu sorunu başka bir sheet oluşturarak halledebiliriz ama apache, poi’nin yeni (!) bir sürümünü yayınlamış (version 3.5) ve bu sürümde Excel 2007′ye de destek vermiş. Şuanki en güncel sürüm ise 3.6
Poi Excel Api olarak HSSF isminde bir kütüphane sunuyor. Bu kütüphanede yukarıda bahsetttiğim gibi satırlara erişim için short tipinde sayılar kullanılıyor. Yeni sürümde bu kütüphaneye ek olarak XSSF isimli bir kütüphane daha eklenmiş. Bu kütüphane OOXML destekleniyor. yazının devamını oku »
Java ile ilgilenen herkes mutlaka JavaFx ismini duymuştur. JavaFX , Adobe Air ve Microsoft Silverlight’a karşı olarak çıkartılmış bir teknoloji. Şu an için 1.2 versionu indirilmeye sunulmuş. JavaFx ilk duyrulduğunda Javacıları oldukça heycanlandırmış fakat sonra bir çok eksik ile kullanıma sunulduğu orta çıkmıştı. Geliştiriciler, JavaFx’i duyurmak için Sun’ın erken davrandığını belirtip bu politikayı kötü bularak eleştirmişlerdi.
Sun, JavaFx geliştirme ortamı olarak Netbeans’ı işaret etmişti. Ne yazik ki Netbeans JavaFx geliştirmede kod tamamlama ve yazılan kodların çıktısını vermekten ileri gidemedi. Ayrıcana bir component panel ekleyip , component panelinden componetleri kod yazma editörümüze sürükleyerek bir nevi sürükle bırak code snippet eklemişlerdi. Tabi rakiplerine bakıldığında bu geliştirme ortamı oldukça zayıf kalıyordu. Grafik animasyon ile uğraşan ve etkileyici arayüz yapmak isteyen geliştiriciler için hiçte kolay olmayan bir ortam sunulduğu için, Air ve Silverlight karşısında JavaFx’in bir şansı bana göre yoktu. Rasyonel bir programcı dil fanatikliği yapmayarak en uygun teklojiyi seçmeli bence.
Diğer geliştiriciler de benim gibi düşünmüş olmaliki JavaFx ilk tanıtımındaki etkiki bir türlü verememişti. İş animasyon tasarımına gelince hardcore code yazmaktan hoşlanan javacılar bile bir flash benzeri araç olması gerektiği konusunda hemfikir oldular. İlk olarak JFXBuilder diye 3. parti bir araç sunuldu. Sloganıda The First JavaFX Vusial Designer oldu. Tabi bu araç da deneme çalışması havası olduğu için rakiplere göre oldukça sıradan bir araç görüntüsü vermekten kurtulamadı. yazının devamını oku »
Ubuntu’da konsolda java derleyebilmek ve bazı framework araçlarını kullanabilmek için sistem değişkeni olarak JAVA_HOME değerini tanıtmamız gerekmekte. Bunun için yapmamız gereken çok basit.
1 | sudo pico /etc/bash.bashrc |
komutunu terminalde çalıştırıyoruz. Sonrasında bash.bashrc dosyasının en alt satırına aşağıdaki satırları ekliyoruz.
1 2 3 4 5 | ####### JAVA_HOME SETTING ######## JAVA_HOME=/usr/lib/jvm/java-6-sun export JAVA_HOME PATH=$PATH:$JAVA_HOME/bin export PATH |
Yukarıdaki satırları ekledikten sonra CTRL+X sonrasında Y tuşuna basıp Enter diyerek dosyada yapılan değişiklikleri kaydediyoruz. Bu işlemler sonucunda tekrardan tekrardan komut satırı bizim komut girmemiz için beklemeye geçecektir. java_home değişkeninin aktif olup olmadığını görmek için şu komutu girerek test edebilirsiniz echo $JAVA_HOME . Bu komut çıktı olarak karşınıza şu mesajı yazmalı, /usr/lib/jvm/java-6-sun-1.6.0.14.
Artık terminalden java ile ilgili her türlü işlemi yerine getirebilirsiniz.
Şu günlerde Google ve HTC’den hiç beklenmedik bir gelişme yaşandığı ortaya atıldı. Biliyorsunuz google şu aralar yeni bir işletim sistemi üzerinde çalışıyor. Tarayıcı üzerine modellenen bu işletim sistemi 2010′un 3. çeyreğinde sahalarda görebileceğiz. Tüm bunları zaten biliyoruz ama bilmediğimiz Google’ın , HTC ile iş birliği yaparak bir tablet pc üzerinde çalıştıkları. Apple’ın bir tablet pc için uğraştığını biliyorduk ama HTC ile Google’ın bu çalışması gerçekten süpriz bir haber nitelikte. Bekleyelim görelelim
Java Thread (Kanal) kullanımı ile internette pek çok örnek mevcut olmasına rağmen bir örnekte ben vereyim. Felis Project için gerekli bir kod parçacığında Java Thread kullanmak zorunda kaldım. Bunun nedeni ise google’ı iyi bir şekilde (pekte iyi sayılmaz
) aramama rağmen JFrame penceresinin taşınmasına ait hergangi bir window listener kodu bulamamam.
Yapmak istediğim aslında çok basit bir olay. JFrame eğerki kullanıcı tarafından taşınmış ise (yani ekrandaki konumu değişmis ise ) bunu yakalayan bir listener fonksiyonu lazımdı. Ama pencereler ile ilgili dinleyicisine ait; active, deactive , opened, closed, iconified, deiconified gibi fonksiyonların yer almasına karşın benim istediğim türde bir fonksiyon yok.
Bende bu nedenle bu işi thread ile halletmeye karar verdim. yazının devamını oku »
Java 2D Api kullanarak jpanel , jframe vs. üzerine herhangi bir String yazdırdıysanız, lcd ekranlarda yapılan render’ın yumuşak hatlara sahip olmadığını fark etmişsinizdir. Yapmakta olduğum açık kaynak bir projede (Kod Adı: Felis ) yoğun bir biçimde java2d kullanmaktayım. Ekrana yazdırdığım stringlerin yumuşak bir şekilde render edilmemesi beni rahatsız ettiği için internette küçük bir arama yaptım. Ve sonunda bu probleme bir çözüm buldum. yazının devamını oku »
Jboss AS (Application Server) kullanıyor ve uygulamalarınızı deploy ederken ya da çalıştırdıktan bir süre sonra permgen size exception’ı alıyorsanız üzülmeyin
yapmanız gereken application server’ın başlarken kullandığı konfigürasyon dosyasına bir iki ayar çekerek bu durumdan kurtulabilirsiniz. yazının devamını oku »
Açık kaynak olarak dağıtılan java ile yazılmış uygulama geliştirme platformu olan netbeans ide’nin 6.8 numaralı sürümü indirilmeye sunuldu. Yeni Sürümde bir çok yenilik eklenmiş durumda. Bunlardan en çok dikkat çekeni JSF 2.0 desteği eklenmiş olması. Bir diğer yenilik ise PHP 5.3 versiyonun getirdiği tüm yeni özellikleri (namespaces vb.) destekliyor olması. Ayrıcana php uygulama geliştirme çatısı olan Symfony Framework’e yeni sürümde destek verilmeye başlanmış (Symfony Projeleri, Symfony komutları, kısayollar, YAML dosyaları içinde php söz dizimi renklendirmesi).Yeni sürümü www.netbeans.org adresinden ücretsiz olarak indirebilirsiniz.
Programlama ve hayata dair yazılar yazdığım bloguma hoş geldiniz.
Adım Kamil. 23 yaşındayım. Yazılım geliştiricisiyim. Selçuk Üni. Bilgisayar Programcılığı
bölümünden mezunum. Açık Öğretim İktisat Fakultesi 3. sınıf öğrencisiyim. Profesyonel hayatımda java ve php tabanlı
yazılımlar geliştirmekteyim. Antalya'da bir turizm firmasında yazılım geliştirme
uzmanı olarak çalışmaktayım.

