Java

JSF, JSP ve Servlet arasındaki fark nedir?

JSF, JSP ve Servlet arasındaki fark nedir?
Bu üç kavram genellikle karışıtırılır, bu karışıklık kimi zaman yanlış anlamalara da neden olabiliyor. Haklı karışıklığın sebebi, bu üç kavramın da birbirine çok yakın olması.

Java'da Ondalık Sayıları Yuvarlama

Java'da ondalık sayıları BigDecimal sınıfının setScale() fonksiyonu ile yuvarlayabilirsiniz.Bu metod Java 1.1 ve sonraki versionlarda kullanılabilir.

import java.math.*; public class divers { public static void main(String args[]){ divers d = new divers(); d.testRound(); } public void testRound(){ double r = 3.1537; int decimalPlace = 2; BigDecimal bd = new BigDecimal(r); bd = bd.setScale(decimalPlace,BigDecimal.ROUND_UP); r = bd.doubleValue(); System.out.println(r); // output is 3.15 } }

JSF’de PhaseListener ile Oturum Yönetimi

SF, günümüzün en popüler web framworklerindendir. Java’nın gücünü ve tasarımın esnekliğini JavaServer Faces ile kullanabilirsiniz. JSF’de oturum yönetimi yani kullanıcı adı ve parola girildikten sonra erişilen korunumlu sayfaları olan uygulamalar geliştirmenin bir çok yöntemi vardır. Örneğin çok basit bir yöntem; her sayfanın başına session’da istenilen bir değerin var olup olmadığına bakılabilir. Aşağıdaki örnekte, bu yöntemden çok daha farklı bir yöntemle yani JSF’ye özgü bir yöntemle oturum yönetiminin nasıl yapılacağı anlatılacaktır.

Neler Gerekli;

RichFaces Kurulumu

Var olan JSF geliştirme ortamında Richfaces kullanmak için aşağıdaki adımları takip edebilirsiniz.

JSF Custom Validation – Eposta Kontrolü

JSF, Java dünyasının web alanında parlayan değeridir. Richfaces, myFaces gibi çeşitli kütüphanelerle yeterli sayılabilecek düzeyde Ajax desteği ile de uygulama geliştirmek mümkündür. JSF’de birtakım validation’lar yani form kontrolleri (doğrulama da denebilir) doğrudan yapılabilir. Ancak bazı özel durumlara özgü validation’lar gerekebilir. Aşağıdaki örnekte JSF ile E-Posta doğrulamasının nasıl yapılacağı açıklanmıştır.

form.jsp içerisinde aşağıdaki gibi basit bir formunuzun olduğunu varsayalım;

JSF’de Çoklu Alanlar İçin Doğrulama – Validator

JSF, form verilerini doğrulama açısından gerçekten çok güçlü bir yapıya sahiptir. Kendi içinde de hazır birkaç doğrulama mekanizması bulunmakla birlikte onu asıl güçlü kılan kullanıcıların kendi doğrulama sınıflarını yazıp, daha sonra tekrar tekrar kullanabilmeleridir.

JSF – Class İçinden Bean’ın Metod ve Değerlerine Erişim

JSF’de Bean’lar olmazsa olmazlardır. Bazı durumlarda java sınıflarından (uzantısı java olan dosyalardan) herhangi bir bean’ın mevcut metod ve değerlerine erişmek gerekebilir. Önceleri bu erişim createValueBinding metodu ile yapılırken, bu metodun deprecated (onun işini yapacak yeni bir sınıf oluşturulmasından) olmasında dolayı bean’lara sınıflar içinden erişim createValueExpression ile yapılmaktadır. Aşağıda her iki şekilde erişime ait java kodları yer almaktadır.

RichFace için RichText Editor

RichFaces, JSF dünyasının en popüler frameworklerinden biri olduğu konusunda hiç şüphe yoktur. Jboss tarafından geliştirilen Richfaces’ın 3.3.0 sürümü yakın zamanda piyasaya çıkacak. RichFaces 3.3.0.CR1 sürümü BETA sürümün ardından şimdiden test ediliyor. 3.3 sürümünden birtakım düzenlemeler, iyileştirmeler yapılırken iki de yeni bileşen eklenmiş. Bu adreste yeni sürüme ait notları okuyabilirsiniz.

Tomcat / JSF Kurulumu

Bu yazıda JSF’nin Tomcat 6 üzerine kurulumunu açıklamaya çalışacağım. Çalışma sonunda çok basit bir JSF uygulama da yazıp, JSF’nin nasıl çalıştığı konusunda bir fikir vermeye çalışacağım.

JSF’nin son sürümü 1.2, servlet 2.5 ve JSP 2.1 gerektirmektedir. Biz örneğimizde Tomcat 6 kullanacağımız için böyle bir sorunumuz olmayacak. Ancak var olan başka bir tomcat ile JSF yazmak isterseniz, buna dikkat etmeniz gerekir. Tomcat 6.0, JSTL ve JSF 1.2 dosyalarını indireceğiz.

Online Java Kursu http://www.javablackbelt.com/

Eğer bu sitedeki yazıları takip ediyorsanız, 25 Ağustostaki Hangi Programlama Dili başlıklı yazımızda, popüler programlama dillerinin bir listesini vermiştik. Bu listenin en tepesindeki dil Java idi. Java, günümüzde özellikle büyük ölçekli uygulamalar geliştirmek için (bunun dışında birçok platform için uygulama geliştirilmektedir) yaygın olarak kullanılan ve tercih edilen programlama dilidir.

SCJP ve SCJD Kaynakları

Java’nın Sertifikasyon programı SCJP (Sun Certified Java Programmer) ve SCJD (Sun Certified Java Developer) sertifikaları için birkaç kaynak vermek istiyorum;

Decimal Format

Aşağıdaki örnek ile double tipindeki bir ifade formatlanabilir.

double toplam_fiyat = 155.548; DecimalFormat df = new DecimalFormat("#0.00"); String formatted = df.format(toplam_fiyat); //155.55

Bir Metni Parçalara Ayırmak

String REGEX = "\\s+"; String INPUT = "Buraya girilen metin geldi"; Pattern p = Pattern.compile(REGEX); String[] items = p.split(INPUT); for (int i = 0; i < items.length; i++) { out.println("
"+items[i]); }

Yukaridaki örnekte, INPUT içerisinde ayristirilmak istenen metin atanir, sonrasinda da REGEX degiskenine de kelimeleri ayristiracak ifade yazilir.

Java’da Tarih Kıyaslama

import java.text.DateFormat; import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.Date; public class CompareDates { public static void main(String[] args) throws ParseException { DateFormat df = new SimpleDateFormat(“yyyy-MM-dd”); Date d1 = df.parse(“2000-02-01″); // ilk tarih Date d2 = df.parse(“2001-03-02″); // ikinci tarih String relation; if (d1.equals(d2)) relation = “the same date as”; else if (d1.before(d2)) relation = “before”; else relation = “after”; System.out.println(d1 + ” is ” + relation + ‘ ‘ + d2); } }

Java’da PL/SQL Fonksiyon Çağırma

Aşağıdaki fonksiyon ile bir PL/SQL fonksiyonu Java’dan çağırılabilir;

JSP ile Mail Gönderme

<%@page contentType="text/html; charset=iso-8859-9" language="java" import="java.net.*, java.io.*" errorPage="" %> Socket'le e-posta gönderebilme <% Socket epostaSocket = new Socket("localhost", 25);

Tomcat’te Library Tanımı

$TOMCAT_HOME/conf/catalina.properties dosyasında aşağıdaki tanımın yapılması gerekmektedir;

shared.loader=${catalina.base}/shared/classes,D:/local_library/classe
Subscribe to RSS - Java

Etkinlik Takvimi

P S Ç P C C P
 
1
 
2
 
3
 
4
 
5
 
6
 
7
 
8
 
9
 
10
 
11
 
12
 
13
 
14
 
15
 
16
 
17
 
18
 
19
 
20
 
21
 
22
 
23
 
24
 
25
 
26
 
27
 
28
 
29
 
30
 
31
 
 
 
 

Yaklaşan Etkinlikler