Android için Geliştirme Ortamı Kurulumu

Öncelikle gerekli olan programlar ;

1- Çalışma ortami için Eclipse

2-Eclipse’e kurulcak olan Android SDK

3-Java Development Kid(İlk bu kurulmalı çünkü Eclipse bu olmadan çalışmayacaktır)

 

İlk önce JDK’ mızı kuruyoruz. Sonra IDE’mizi çalıştırıyoruz.Android SDK kurulumu için Help-> Install Software diyoruz


Daha sonra Work with yerine  “  https://dl-ssl.google.com/android/eclipse/  “  bu bağlantıyı ekliyoruz ve Next diyoruz

Daha sonra Android SDK ‘mızın bilgsayarımızdaki yerini belirtmemiz gerekiyor.Onun için de Window > Prefences seçeneğinden kurmuş olduğumuz Android SDK ‘mızın yerini belirtiyoruz.

Örnek Web Service

Web servislerini kısa bir şekilde “ SOAP “ adlı yazımda açıklamıştım.Bu yazıda  ise örnek bir web service sınıfı nasıl yazılır bundan bahsedeceğim.

  • javax.jws.WebService ya da  javax.jws.WebServiceProvider annotationlarından birini kullanmalıdır.
  • public erişim denetleyicisine sahip olmalıdır.
  • static ya da final tanımlanmamalıdır.
  • Sınıf içerisinde dışarıdan çağrılacak iş yapan metotların javax.jws.WebMethod annotation’ını kullanması gerekir.
  • Yine bu metotların JAXB uyumlu parametreleri ve dönüş tipleri olması gerekir.
  • Sınıf abstract olmamalıdır ve public default constructor’ı olmalıdır.
  • finallize metodu olmamalıdır.

package tr.gov.eba.webservice;

import javax.jws.WebService;
import javax.jws.WebMethod;
import javax.jws.WebParam;

/**
*
* @author umitunal
*/
@WebService(serviceName = “WebServ”)
public class WebServ {

@WebMethod(operationName = “hello”)
public String hello(@WebParam(name = “name”) String txt) {
return “Hello ” + txt + ” !”;
}

@WebMethod(operationName = “operationHelloiki”)
public String operationHelloiki(@WebParam(name=”text”)String txt) {

return “Hello”+txt+”Salak!”;
}
}

 

operationHelloiki’yi Web Service sağ click “Add Operation ” Diyerek ekliyoruz.

webservice1

Sunucu üzerinde çalıştırıyoruz. Methodlarımıza bir şey yazarak tıkladığımız zaman ise ;

webservice2

böyle bir sonuç ekranı ile karşılaşıyoruz.

 

İyi çalışmalar.

ORM Nedir ?

ORM(Object Relational Mapping ) Nedir?

ORM, object oriented dillerdeki nesnelerin, ilişkisel (relational) veritabanlarındaki kayıtlarla eşlenmesi (mapping) işlemidir.

Veritabanındaki tablolarımızı objelere dönüştüren ,tabloları classlara,satırları objelere dönüştüren objeler üzerinden veritabanımıza delete,read  gibi işlemlerimizi yapmamızı sağlayan nesne odaklı (object oriented) dillerdeki nesnelerin, ilişkisel veritabanlarındaki (relational databases) kayıtlara nasıl karşılık geldiğini yürüten bir teknolojidir.

ORM’ler için piyasada belli başlı tools’lar vardır.Bunlardan biri JAVA için geliştirilmiş olan Hibernate’dir.

Hibernate;

2001 yılında Gavin King tarafından yazıldı ve şu an yazılım yönetimi JBoss şirketi tarafından yapılmaktadır.Tamamen open source’dur ve Java sektöründe en çok kullanılan ORM aracıdır. JPA (Java Persistence Api) teknolojisidir.

JPA’yı açıklayacak olursak ;

Persistence araçlarını sizlerin veritabanlarına nesne kaydetmenizi sağlayan araçlar olduğunu düşünün. Hepsi de birbirinden farklı olan araçlar. Kullanımları da tamamen birbirinden farklı. Hepsinin nasıl kullanıldığını öğrenmek son derece zor ve uğraştırıcı. İşte bu durumda ara kademeye hepsini nasıl kullanabileceğini bilen bir eleman alıyorsunuz. Siz sadece bu elemana git şu aracı kullanarak şu veritabanına şu veriyi kaydet diyorsunuz, o da gidip yapıyor. Geri kalanı da sizi ilgilendirmiyor.

Kısa bir örnek kod göstercek olursak ;

tabloOlustur.java ve  JPAtabloCont.java diye sınıflarımız olduğunu düşünürsek tablo.java’dan tablo oluşturmak için bir obje oluştururuz.

 

tabloOlustur tablo1=new tablo();

tablo1.ad=”Ümit “;

tablo1.soyad=”Ünal”;

 

diğer class’ımızda da entity  objesi oluşturuyoruz

JPAtabloCont entity = new JPAtabloCont();

entity.save(tablo1);

save metoduyla tablo1′e verilerimizi 2 satır kod ile kaydetmiş olduk.

Java’nın sunduğu kolaylıklar ,teknolojiler tadından yenmiyor.

JavaServerFaces Error

Eclipse’de JavaServerFaces kullanmak istediğinizde projenizde,JavaServerFaces 2.1 ‘ i seçtiğiniz zaman faces-config.xml hata veriyor.Bu hatayı henüz çözebilmiş değilim nedenini bilen varsa yorum olarak düşerse çok sevinirim.

JavaServerFaces 2.1 yerine Configuration seçeneğinden Modify’a tıkladığımız zaman 1.1 ‘ i seçerek devam edebilirsiniz.

 

 

SERVLET CRUD iSLEMLERi

Netbans’ten örnek bir JAVA Wep Application oluşturup, java package’larımızı oluşturuyoruz.Projenin anlaşılabilir olması açısından her şey düzen içerisinde olmalı.Yazılımda marjinal olmak bence iyi değildir, uyum sağlamak daha iyidir bana göre.

Java Packagelarımızın içine yeni bir servlet açıyoruz ve kodlamaya başlıyoruz.

PreparedStatement, java standart kütüphanesindeki sınıflardan biridir. gönderilecek parametre değişken bir şeyse, o parametrenin olacağı yere, sql cümlesinde, soru işareti konur. ardından setint, setstring gibi metotlar ile bu soru işaretlerinin yerine hangi değişkenin değerinin geleceği gösterilir. metin içeren sql cümlelerinde ‘ işaretinin azizliğine uğramak gelenekselliştiğinden, preparedstatement buna da çare olmuştur.SQL Injection ‘ a karşı koruma sağlar yani.Güvenilirdir.

Kodlarımızı try {} catch(){} finally{} bloklarına yazıyoruz.Çünkü try{} bloğunda bir hata olduğu zaman catch bloğuna bir null pointer exception koyarak exception fırlattırarak bu hatayı kullanıcıya hissettirmeden sadece biz görerek hatayı yakalayabiliriz.Onun için projelerde Exception kullanmak olmazsa olmazlar arasındadır.

Servlette CRUD işlemlerinde “insert,update,delete “işlemi yaptırmak için “pst.executeUpdate();” ” select” işlemi yaptırmak için “pst.executeQuery();” kullanıyoruz.Geri kalan kod parçacıklarını yorum satırı şeklinde açıkladım zaten.

SERVLET CRUD iSLEMLERi

 

 

Servlet kodlaması için , Netbeans’imizi açıyoruz.

File menüsünden Java Web uygulamamızı oluşturuyoruz.Artık bi java web projesine hazırız.

Servlet oluşturmak için bir tane servlet sınıfı oluşturmamız lazım.Servletimizi ekledikten sonra

import java.io.IOException;

import java.io.PrintWriter;

import javax.servlet.ServletException;

import javax.servlet.annotation.WebServlet;

import javax.servlet.http.HttpServlet;

import javax.servlet.http.HttpServletRequest;

import javax.servlet.http.HttpServletResponse; kütüphaneleri gelcektir.

Servlet kodumuzu “try{} catch(){} finally{}” bloklarının içine yazacağız.Ama önce aldığımız veritabanına bağlanmak için JDBC Resource ve JDBC Connection Poollarımızı açmamız lazım.

Önce JDBC Connection Pool açarız New diyip.Sonra tüm propertyleri silip user , password, setcharacterEncoding,url ayarlarımızı yaptıktan sonra Resources kısmında ilişkilendirip connection pool’umuzu orda da aynı propertyleri ekliyoruzDatabase’imizin user’ı root password’u ne koyduysak o ,  setCharacterEncoding’i UTF-8 ,url olarak  da jdbc://localhost diye başlayıp giden url’yi veriyoruz onu IDE’den paste edebilirsiniz ,url’yi hep unuturum :). Projelerinizin database’ne log basmaması için şimdilik localhost’ta çalışmasınızı öneririm.

Database olarak ben Mysql ‘ i tercih ediyorum. MySql indirmek için .

Mysql’i kurduktan sonra Mysql’i register yapıp kendi veritabanımı yaratıyorum veritabanımda şekillendirmek için veritabanımın içine sql sorguları yazıyorum

CREATE DATABASE IF NOT EXISTS dbase;

USE dbase;

 

DROP TABLE IF EXISTS `person`;
CREATE TABLE `person` (
`id` INT(10) UNSIGNED NOT NULL AUTO_INCREMENT,
`Ad` VARCHAR(45) NOT NULL,
`Soyad` VARCHAR(45) NOT NULL,
`Yas` INT(10) UNSIGNED NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=6 DEFAULT CHARSET=utf8;

               Burda dbase adında bir Mysql veritabanı oluşturup bu veritabanının içinde person adlı bir tablo oluşturdum ve tablonun içinde olması gerekenleri de özellikleriyle birlikte yerleştirdim.