Categories
Common Java Java

Javada Dosya Acmak

javaAsagidaki ornekte herhangi bir txt dosyayi nasil acabilecegimizi gosterecegim, aslinda bunu C# da asagidaki gibi yapiyoruz ama Javada olan kucuk ama farkli nuanslardan da bahsedecegim.

System.Diagnostics.Process.Start(“C:\\test.txt”);

Peki bu islemi Java da nasil yapacagiz?  Asagida yine tek satir olan bunun kucuk bir ornegi var fakat bundan once projemize asagidaki package i import etmeliyiz oncelikle.

import java.io.IOException;

Ayrica Javada IO, Database gibi islemleri yaparken try – catch bloklari kullanmaliyiz yoksa yazdigimiz kod hata verecektir , bu Visual Studio da olmayan bu ozellik aslinda bizi bircok sorundan kurtarmaktadir. Java bu konuda Proaktif bir yaklasim sergilemektedir (Yavuz hocamin bunu okursa guldugunu duyar gibiyim :))

try
{
Runtime.getRuntime().exec(“notepad C:/test.txt”);
}
catch (Exception Exc)
{
JOptionPane.showMessageDialog(rootPane, Exc.getMessage());
}

Categories
Common Java Java

Javada Dosya Silmek

javaJava ile herhangi bir yerdeki dosyayi silme islemi icin kucuk bir ornek yapacagiz, aslinda tahmin edebileceginiz gibi yapacagimiz islem cok basit.

Dosyanin pathini gostererek bunu silmek , hatta C# ile bu islemi yapan arkadaslarimiz varsa bunu Java ile yapmak nerdeyse 30 saniye alacaktir. Ornek kod asagidaki gibidir, tabiki siz bu koda uyarilar verebilir veya isleminizi sonucunu ekrana yazabilirsiniz , ben sadece silme islemini yapiyorum.

Koddanda anlasilacagi gibi  C diskindeki Erkan.txt dosyasini siliyoruz.

try
{
File ff=new File(“c:\\erkan.txt”);
ff.delete();
}
catch (Exception Exc)
{
JOptionPane.showMessageDialog(rootPane, Exc.getMessage());
}

Categories
Common Java Java

.jar Olusturmak ve .jar`i Refere Etmek

javaJava ile ilgili formlarda bir soru gordum ve bunu bircok arkadasimiz sormus, kisaca bunu anlatacagim.

Java da olusturdugumuz classlari jar olarak olusturma ve bunu daha sonra farkli java projelerinden kullanma bizler gibi yazilimcilar icin vazgecilmezdir. Oncelikle olusturdugumuz classlar sonrasinda projemizi sag tiklar properties den gelen pencerede build treesine gidersek Packaging gelecektir onu checkleyip OK e tiklarsak artik bizimde bir .jar dosyamiz olacaktir.
Bunu da baska bir projeye refere ederken yine projede Properties tabina gelerek burdan Libraries e geliriz ve bize gelen sagdaki ekranda Add Jar/Folder secilerek olusturulmus .jar dosyamizi projemize ekleriz.

Sonucta ne kadar cok kutuphanemiz varsa bizim icin o kadar tecrube ve kolaylik anlamini tasiyacaktir ve yapmak istediklerimizi cok kolay sekilde gerceklestirecegiz.

Categories
Common Java Java

Java da Enums

javaJavada enumlar ile iglili kucuk bir ornek yapacagim. Oncelikler enumlarim oldugu bir class yazacagiz ve UI dan bu classidaki enum degerlerini cagirip her zamanki gibi joptionpane ile ekrana basacagim.

Oncelikle sisteme dokuman ekledigimizi yani bir dokuman yonetim sistemindeki dokuman turlerini enumlar ile belirledigimiz dusunelim.

DocType isimli bir java classimiz olsun ve bu class da da asagidaki gibi bir procedure yazalim. Dikkat edersen documentType isimli enum  tanimladik ve degerlerini de “kambiyo”,”ik” .. gibi belirttik.

public class DocType
{
enum documentType {kambiyo , bireyselKredi , kurumsalKredi , ik, musteri};
}

Artik yapmamiz gereken bu enumlari UI da asagidaki gibi gostermek. Kisacasi enum tanimliyoruz ve bunu da JoptionPane ile ekrana mesajlar halinda basiyoruz.

JOptionPane.showMessageDialog(null, DocType.documentType.bireyselKredi.toString());
JOptionPane.showMessageDialog(null, DocType.documentType.kambiyo.toString());
JOptionPane.showMessageDialog(null, DocType.documentType.ik.toString());

Categories
Common Java Java

StringTokenizer

javaJavada StringTokenizer stringdeki bosluklari ayrac kabul ederek stringi bolmemizi saglayan cok kullanisli bir classtir.

Ornegi asagidaki gibidir ve yaptigimiz islem aslinda textimiz icindeki her kelimeyi ayri ayri ekrana popup olarak yazmaktir.

Erkan , Sezer , FileNet , P8 , Platformunda , Calisiyor artik hepsi farkli farkli degerlerdir.

String cumle1=”Erkan Sezer Filenet P8 Platformunda Calisiyor”;
StringTokenizer st1 = new StringTokenizer(cumle1);
while(st1.hasMoreTokens())
{
JOptionPane.showMessageDialog(rootPane, st1.nextToken());
}

Categories
Common Java Java

Java Ile Generic Class

javaJava ile asagida birkac tane Generic ornegi verecegim. Butun ornekler nerdeyse ayni birini anlamaniz digerlerini anlamaniz icin yeterli olacaktir.

Butun orneklerde oncelikle list string veya integer tipinde olusturuluyor. Daha sonra list e veriler ekleniyor ve Iterator yardimi ile While dongusu kullanilarak list icinde donuluyor.  Koddan da anlayabileceginiz gibi JoptionPane ile de ekrana list icinde ki tum elemanlari mesaj olarak basiyoruz. Burda tek dikkat etmemiz gereken , eger tanimladigimiz list String turunde ise string degerler , Integer turunde ise Integer degerler almaktadir.

Ayrica while dongusunde Iterator un hasNext boolen degeri ile iteratorun dongu icinde ilerlemesi saglaniyor.

ArrayList<String> liste = new ArrayList<String>();
liste.add(“Erkan”);
liste.add(“Sezer”);
liste.add(“FileNet”);
liste.add(“.NET”);

Iterator<String> iter = liste.iterator();
while (iter.hasNext())
{
JOptionPane.showMessageDialog(rootPane, iter.next());
}

ArrayList<Integer> Ilinste = new ArrayList<Integer>();
Ilinste.add(10);
Ilinste.add(20);
Ilinste.add(30);
Ilinste.add(40);

Iterator<Integer> iiter = Ilinste.iterator();
while (iiter.hasNext())
{
JOptionPane.showMessageDialog(rootPane, iiter.next());
}

List<String> stringList = new ArrayList<String>();
stringList.add(“Kuveyt Turk”);
stringList.add(“Operasyon Merkezi”);
stringList.add(“Bilgi Islem”);

Iterator<String> striter = stringList.iterator();
while (striter.hasNext())
{
JOptionPane.showMessageDialog(rootPane, striter.next());
}

List<Integer> intList = new ArrayList<Integer>();
intList.add(100);
intList.add(200);
intList.add(300);

Iterator<Integer> intIter = intList.iterator();
while (intIter.hasNext())
{
JOptionPane.showMessageDialog(rootPane, intIter.next());
}

Categories
Common Java Java

Javadan .Net Web Serviceni Cagirma

java.NET ile yazilmis olan web service yi javadan call etmeye calisacagiz. Internette baktigimizda bununla ilgili cok fazla dokuman veya bilgi bulunmamaktadir.

Oncelikle Visual Studio ile Asp.Net Web Service yaziyoruz , cok basit anlamda bize bir string return eden bir web service. Bunuda Netbeans ile projemize refere ediyoruz.

Web serviceyi sayfamiza tasimak bunun icin otomatik olarak kod olusturmamizi saglayacaktir ve bu da .NET e gore cok daha kolay clientden web service call etmemizi saglar.

Fakat dikkat etmemiz gerekn konulardan biri web service url inin sonunda ?Wsdl in ekli olmasidir. Java bu eklemeyi yapmadigimizda bize XML parser hatasi verecektir.

Duzgun sekilde web service ye refere ettikten sonra bize donmesi gereken stringi parametre olarak web service ye gectigimizde basarili sekilde bize degerin return oldugunu goruruz.

Uzun suredir yapmayi hedefledigim bir sey olmasina ragmen zamansizlikta dolayi ve javaya calismam gerektiginde dolayi bu islemleri yapamamistim. Artik hem .NET ile hem java ile yazilan web servicelerin her ikisinden de sorunsuz cagrildigini gormek benim icin cok guzeldi.

Categories
Common Java Java

Java Web Service

javaSitelerde ve forumlarda devamli su bilgileri gorursunuz. Java ile yazilan web service yi .Net ile kullanamayiz , WSDL i her zaman problem olusturur veya XML parse hatalari aliriz. Buna benzer bircok yazilar var formlarda.

Aslinda bunu bende cok merak ediyordum, sonunda Java ile basit bir web service yazdim ve bunu da .Net e referans olarak ekledim , web service sadece bana girmis oldugum string datayi return ediyordu.

Butona tikladim ve  : evet bana girmis oldugum datayi return etti 🙂 Tabiki web service ler bu kadar basit asla degil , komplike cok islemler yapan web service ler var benimkisi cok basit anlamda girilen degeri return ediyordu fakat bunun basarili olmasini gormek guzel.

Simdiki hedef .Net ile yazilan web service yi Java ortaminda cagirmak bakalim nasil olacak?

Bu konuyla ilgili olarak her turlu sorunuzu maille bana bildirebilirsiniz. Mail adresim : info@erkansezer.com veya Iletisim linkinden sorularinizi sorabilirsiniz

Categories
Common Java Java

Java Da Interface Kullanımı

javaJava`da interface kullanimi ile ilgili bir ornek yazacagim. Bildigimiz gibi interface ler kullanicin bilmesine gerek kalmayan bilgiler ile kullaniciyi yani burdaki yazilimciyi ugrastirmadan kodlama yapabilemelerine olanak saglayan ve gereksiz islemler ile yazilimciyi yormamak adina kullanilan yapilardir.

Burdaki ornekte kullaniclarin Dokuman Yonetim Sistemine belge ekleyeceklerini dusulenil ama oncelikle hangi departmanda bu islemin yapilacagini yani departman bilgisini bize veren bir interface ve bunu implemente eden class lar yazacagiz, classlardan departman bilgisini yazdiracagiz.

Oncelikle asagidaki gibi interface imizi olusturuyoruz ve daha sonra sirasi ile bankacilik , kambiyo ve fon islemleri icin class lari yaziyoruz ve bu interface den implemente ediyoruz.

public interface Departman
{
public String Departman();
}

public class Kambiyo implements Departman
{
public  String Departman()
{
return “Birim Ismi: Kambiyo Dokuman Ekleme”;
}
}

public class Fon implements Departman
{
public  String Departman()
{
return “Birim Ismi: Fon Sistem Dokuman Ekleme”;
}
}

public class Bankacilik implements Departman
{
public  String Departman()
{
return “Birim Ismi: Bankacilik Dokuman Ekleme”;
}
}

Implemente etmek icin burda implements keyword unu kullaniyoruz. C# da ise bu islemi : isareti ile yapmaktayiz.

Daha sonra hangi departmanin kullanildigini ekranimizi su sekilde yazdiyoruz.

Departman bnk=new Bankacilik();
System.out.println(bnk.Departman());

Departman fonislemleri=new Fon();
System.out.println(fonislemleri.Departman());

Departman kmb=new Kambiyo();
System.out.println(kmb.Departman());

Ekran ciktisi asagidaki gibi olacaktir.

Birim Ismi: Bankacilik Dokuman Ekleme
Birim Ismi: Fon Sistem Dokuman Ekleme
Birim Ismi: Kambiyo Dokuman Ekleme

Categories
Common Java Java

Tarihsel Islemler

javaHer dilde oldugu gibi Javada da ozellikler veri tabani ile yaptigimiz islemlerde tarih degerlerini formatlanmis olarak goremek isteriz.

Asagida bugunun tarihinin hem tarih hemde saat bazinda ayri ayri formatlanmis bicimlari vardir, tabiki her zaman yaptigimiz gibi bize geri donus degerlerinin mesaj pencelerinde gosterecegiz. Bunu C# da MessageBoxlar ile Java da ise JoptionPane`de yapmaktayiz.

Ayrica kodlardanda gorebileceginiz gibi birkac cesiot dateformat vardir. Default ,  Short , Medium gibi.

Date now = new Date();
JOptionPane.showMessageDialog(null, DateFormat.getDateInstance().format(now));
JOptionPane.showMessageDialog(null, DateFormat.getDateInstance(DateFormat.SHORT).format(now));
JOptionPane.showMessageDialog(null, DateFormat.getDateInstance(DateFormat.MEDIUM).format(now));
JOptionPane.showMessageDialog(null, DateFormat.getDateInstance(DateFormat.LONG).format(now));
JOptionPane.showMessageDialog(null, DateFormat.getDateInstance(DateFormat.FULL).format(now));

JOptionPane.showMessageDialog(null, DateFormat.getTimeInstance().format(now));
JOptionPane.showMessageDialog(null, DateFormat.getTimeInstance(DateFormat.SHORT).format(now));
JOptionPane.showMessageDialog(null, DateFormat.getTimeInstance(DateFormat.MEDIUM).format(now));
JOptionPane.showMessageDialog(null, DateFormat.getTimeInstance(DateFormat.LONG).format(now));
JOptionPane.showMessageDialog(null, DateFormat.getTimeInstance(DateFormat.FULL).format(now