22. Ekler
Bu belgede kullanılan araçların Windows 7 veya 8 işletim sistemli bilgisayarlara nasıl kurulacağını burada açıklıyoruz. Ekran görüntülerinde genellikle SGBD ve kurulu araçların 64 bit sürümleri gösterilmektedir. Okuyucu, kendi ortamına göre gerekli ayarlamaları yapmalıdır.
22.1. JDK Kurulumu
URL'te, [http://www.oracle.com/technetwork/java/javase/downloads/index.html] (Ekim 2014) ve en güncel sürüm olan JDK bulunur. Bundan sonra, JDK'in kurulum klasörüne <jdk-install> adı verilecektir.
![]() |
22.2. Maven'ın Kurulumu
Maven, bir Java projesinin bağımlılıklarını yönetmeye yarayan bir araçtır ve daha fazlasını da sunar. Ekim 2014 itibarıyla URL ve [http://maven.apache.org/download.cgi] adreslerinde mevcuttur.
![]() |
Arşivi indirin ve açın. Maven'ın kurulum klasörüne <maven-install> adını vereceğiz.
![]() |
- [1] dosyasında, [conf / settings.xml] dosyası Maven'ı yapılandırır;
Bu dosyada şu satırlar bulunur:
<!-- localRepository
| The path to the local repository maven will use to store artifacts.
|
| Default: ${user.home}/.m2/repository
<localRepository>/path/to/local/repo</localRepository>
-->
- satırdaki varsayılan değer, benimki gibi {user.home} dosyanızın yolunda boşluk varsa (örneğin [C:\Users\Serge Tahé]), Maven kullanan bazı yazılımlar için sorun yaratabilir. 7. satırda, Maven'ın yerel deposu için başka bir klasör belirleyeceğiz:
<!-- localRepository
| The path to the local repository maven will use to store artifacts.
|
| Default: ${user.home}/.m2/repository
<localRepository>/path/to/local/repo</localRepository>
-->
<localRepository>D:\Programs\devjava\maven\.m2\repository</localRepository>
- satırda, boşluk içeren bir yol kullanmaktan kaçınmalıyız.
22.3. STS (Spring Tool Suite) Kurulumu
SpringSource Tool Suite [http://www.springsource.com/developer/sts]'i (Ekim 2014) kuracağız; bu, Spring çerçevesiyle ilgili birçok eklentiyle önceden donatılmış ve ayrıca önceden yüklenmiş bir Maven yapılandırmasına sahip bir Eclipse sürümüdür.
![]() |
- SpringSource Tool Suite (STS) [1] adresine gidin ve STS [2A] [2B] sürümlerini indirin,
![]() |
![]() |
- İndirilen dosya, [3A] ve [3B] dosya dizinini oluşturan bir yükleyicidir. [4]'te yürütülebilir dosya çalıştırılır,
- [5]'te, karşılama penceresi kapatıldıktan sonra IDE'in çalışma penceresi açılır. [6]'te, uygulama sunucuları penceresi görüntülenir,
![]() |
- [7]'te sunucu penceresi görüntülenir. Bir sunucu kaydedilir. Bu, Tomcat uyumlu bir VMware sunucusudur.
STS'e Maven'ın kurulum klasörünü belirtmek gerekir:
![]() |
- [1-2]'te, STS yapılandırılır;
- [3-4]'te yeni bir Maven kurulumu eklenir;
![]() |
- [5]'te, Maven kurulum klasörünü belirleyin;
- [6]'te, sihirbazı tamamlayın;
- [7]'te, yeni Maven kurulumunu varsayılan kurulum olarak ayarlayın;
![]() |
- [8-9]'te, Maven'ın yerel deposu kontrol edilir; bu, indirilecek bağımlılıkların yerleştirileceği ve STS'in oluşturulacak artefaktları yerleştireceği klasördür;
Ayrıca, hem Maven [1-5] ile hem de Maven olmadan Eclipse projelerini çalıştırmak için bir JDK (Java Development Kit) seçmek gerekir.
![]() |
[4] ile JDK (Java Development Kit) veya JRE (Java Runtime Environment) eklenebilir. İkincisi, .class dosyalarını çalıştırabilir ancak bunları üretmek için .java dosyalarını derleyemez. JDK ise her ikisini de yapabilir. Bazı Maven işlemleri JDK gerektirdiği için JDK seçilmelidir.
Bir Eclipse projesi oluşturmak için aşağıdaki adımları izleyin:
![]() |
- [3]'te projeye bir ad verin;
- [4] adımında, mevcut ve boş bir klasör seçin;
![]() |
- [5]'te, oluşturulan proje;
- [5-8] adımında, bir paket oluşturun. Paket, Java kodunu içeren bir klasördür. Farklı paketlere ait oldukları takdirde iki sınıf aynı adı taşıyabilir. Bir projede aynı ada sahip iki paket bulunamaz. Dolayısıyla, projenin bağımlılıklarından birinde mevcut olan bir paket adı kullanılamaz. Bir şirket, paket adı olarak şirketi, projeyi ve projenin farklı dallarını belirten bir ad kullanır;
![]() |
- [9]'te, pakete bir ad verin;
- [10]'te, oluşturulan paket;
![]() |
- [11-13]'te, oluşturulan pakette bir sınıf oluşturulur;
![]() |
- [14]'te, sınıfa bir ad verin (CamelCase standardına uymalıdır - adın her kelimesi büyük harfle başlayıp küçük harflerle devam etmelidir);
- [15]'te paketi kontrol edin;
- [16]'te, kutucuğu işaretleyin. Bu, [main] statik yönteminin oluşturulmasını gerektirir. Bu yöntem, bir sınıfı çalıştırılabilir hale getirir, yani bir projede çalıştırılacak ilk sınıf olur;
- [17]'te, bu şekilde oluşturulan sınıf;
[main] yöntemine, konsolda bir metin görüntüleyen aşağıdaki kodu yazın:
package st.istia;
public class Test01 {
public static void main(String[] args) {
System.out.println("test01");
}
}
![]() |
- [18-20]'te sınıfı çalıştırın. Bunun üzerine [main] yöntemi çalıştırılacaktır;
![]() |
- [21-22]'te, uygulamanın sonucu;
[Console] görünümü mevcut değilse, [1-4] için şu adımları izleyin:
![]() |
Bir Eclipse projesini içe aktarırken projede hatalar ortaya çıkabilir. Bunun nedeni, projenin yanlış yapılandırılmış olması olabilir. Hatayı düzeltmek için (eğer varsa) şu adımları izleyin:
![]() |
- [1] dosyasında, projenin [Build Path] dosyasını değiştirin;
![]() |
- [2] olarak değiştirin; proje, JVM 1.5 sürümünü kullanacak şekilde yapılandırılmıştır;
- [3] olarak değiştirin, bu bağımlılığı silin;
- [4]'te yeni bir bağımlılık ekleyin;
![]() |
- [5]'te, bir JVM eklenir;
- [6]'te, kalemin JVM'i seçin;
Bu işlem tamamlandıktan sonra, tümünü onaylayıp [7] projesinin [Java compiler] özelliğine geçilir:
![]() |
- [8]'te, derleyiciye Java dilinin 1.7 (veya 1.8) sürümüne kadar olan tüm özelliklerini kabul etmesini talep ediyoruz;
- [9]'te onaylanır;
- [10]'te, bu şekilde yeniden yapılandırılan projede artık hata olmamalıdır;
Ayrıca, içe aktarılan proje UTF-8 karakter kodlamasını kullanabilir. İçe aktarılan projede bu kodlamayı ayarlamak için şu adımları izleyin:
![]() |
Ayrıca, Fransızca yorumların hatalı olarak altı çizilmesini önlemek için projede yazım denetimini devre dışı bırakmak faydalı olabilir. Aşağıdaki adımları izleyin:
![]() |
22.4. NetBeans'in kurulumu
NetBeans, URL [http://netbeans.org/downloads/] adresinden edinilebilir.
![]() |
Yukarıdaki bağlantıdan Java SE (Standard Edition) sürümünü indirebilirsiniz.
22.5. Chrome eklentisinin kurulumu [Advanced Rest Client]
Bu belgede, Google'ın Chrome tarayıcısı (http://www.google.fr/intl/fr/chrome/browser/) kullanılmaktadır. Buna [Advanced Rest Client] uzantısı eklenecektir. Aşağıdaki adımları izleyebilirsiniz:
- Chrome tarayıcısıyla [Google Web store] sitesine (https://chrome.google.com/webstore) gidin;
- [Advanced Rest Client] uygulamasını arayın:
![]() |
- uygulama artık indirilmeye hazırdır:
![]() |
- Uygulamayı indirmek için bir Google hesabı oluşturmanız gerekecektir. [Google Web Store] daha sonra [1] onayını ister:
![]() |
- [2]'te, eklenen uzantı [Applications] [3] seçeneğinde kullanılabilir. Bu seçenek, tarayıcıda oluşturduğunuz her yeni sekmede (CTRL-T) görüntülenir.
22.6. Java'da jSON Yönetimi
Geliştirici için şeffaf bir şekilde, [Spring MVC] çerçeve, jSON [Jackson] kütüphanesini kullanır. jSON (JavaScript Nesne Notasyonu) ne olduğunu açıklamak için, burada nesneleri jSON formatında serileştiren ve bunun tersini yaparak üretilen jSON dizelerini deserileştirip başlangıçtaki nesneleri yeniden oluşturan bir program sunuyoruz.
'Jackson' kütüphanesi, bir nesnenin
- bir nesnenin jSON dizesini: new ObjectMapper().writeValueAsString(object);
- bir jSON dizesinden bir nesne oluşturmak: new ObjectMapper().readValue(jsonString, Object.class).
Her iki yöntem de bir IOException başlatabilir. İşte bir örnek.
Yukarıdaki proje, aşağıdaki [pom.xml] dosyasını içeren bir Maven projesidir;
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>istia.st.pam</groupId>
<artifactId>json</artifactId>
<version>1.0-SNAPSHOT</version>
<dependencies>
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
<version>2.3.3</version>
</dependency>
</dependencies>
</project>
- 12-16. satırlar: 'Jackson' kütüphanesini yükleyen bağımlılık;
[Personne] sınıfı şu şekildedir:
package istia.st.json;
public class Personne {
// veri
private String nom;
private String prenom;
private int age;
// üreticiler
public Personne() {
}
public Personne(String nom, String prénom, int âge) {
this.nom = nom;
this.prenom = prénom;
this.age = âge;
}
// imza
public String toString() {
return String.format("Personne[%s, %s, %d]", nom, prenom, age);
}
// alıcı ve ayarlayıcılar
...
}
[Main] sınıfı şöyledir:
package istia.st.json;
import com.fasterxml.jackson.databind.ObjectMapper;
import java.io.IOException;
import java.util.HashMap;
import java.util.Map;
public class Main {
// serileştirme / ters serileştirme aracı
static ObjectMapper mapper = new ObjectMapper();
public static void main(String[] args) throws IOException {
// kişi oluşturma
Personne paul = new Personne("Denis", "Paul", 40);
// görüntüleme jSON
String json = mapper.writeValueAsString(paul);
System.out.println("Json=" + json);
// JSON'dan Kişi nesnesinin oluşturulması
Personne p = mapper.readValue(json, Personne.class);
// Kişi görüntüleme
System.out.println("Personne=" + p);
// bir dizi
Personne virginie = new Personne("Radot", "Virginie", 20);
Personne[] personnes = new Personne[]{paul, virginie};
// JSON görüntüleme
json = mapper.writeValueAsString(personnes);
System.out.println("Json personnes=" + json);
// sözlük
Map<String, Personne> hpersonnes = new HashMap<String, Personne>();
hpersonnes.put("1", paul);
hpersonnes.put("2", virginie);
// JSON'un görüntülenmesi
json = mapper.writeValueAsString(hpersonnes);
System.out.println("Json hpersonnes=" + json);
}
}
Bu sınıfın çalıştırılması sonucunda ekranda şunlar görüntülenir:
Örnekten çıkarılacak sonuçlar:
- jSON / Object dönüşümleri için gerekli olan [ObjectMapper] nesnesi: 11. satır;
- [Personne] --> jSON dönüşümü: 17. satır;
- jSON --> [Personne] dönüşümü: 20. satır;
- her iki yöntem tarafından tetiklenen [IOException] istisnası: satır 13.
22.7. [WampServer]'in kurulumu
[WampServer], adresinde bulunan, bir Windows makinesinde PHP / MySQL / Apache üzerinde geliştirme yapmak için kullanılan bir yazılım paketidir. Bunu yalnızca SGBD ve MySQL için kullanacağız.
![]() |
- [WampServer] [1] sitesinden uygun sürümü seçin [2],
- İndirilen dosya bir kurulum programıdır. Kurulum sırasında çeşitli bilgiler istenir. Bu bilgiler MySQL ile ilgili değildir. Dolayısıyla bu bilgileri göz ardı edebilirsiniz. Kurulumun sonunda [3] penceresi görüntülenir. [WampServer]'i çalıştırın,
![]() |
- ve [4]'e dönüştürüldüğünde, [WampServer] simgesi ekranın sağ alt köşesindeki görev çubuğuna yerleştirilir; [4],
- üzerine tıklandığında [5] menüsü görüntülenir. Bu menü, Apache sunucusunu ve SGBD ile MySQL'i yönetmeye olanak tanır. Bunu yönetmek için [PhpPmyAdmin] seçeneğini kullanırız;
- böylece aşağıdaki pencere açılır,

[PhpMyAdmin]'in kullanımı hakkında fazla ayrıntıya girmeyeceğiz. 6.4.2 numaralı paragrafta, bir SQL betiğinden bir veritabanı oluşturmak için nasıl kullanılacağını göstereceğiz.






























