JSF Veritabanı Bağlantısı Kurmak
Java Server Faces derslerine devam ediyoruz.
Java Server Faces ile Veritabanı İşlemlerine başlamadan önce yapmamız gereken şey haliyle bir veritabanı bağlantısı kurmaktır. Veritabanımız ne olursa olsun yaptığımız yazılımın veriler ile iletişim kurması için bir köprü yapmamız gerekmektedir.
Bu iletişimi sağladıktan sonra veritabanındaki bilgileri kullanarak ya da veriler aktararak işlemlerimizi yapabilmekteyiz.
- Veritabanına veri kaydetme
- Veritabanında kayıt düzeltme
- Veritabanında kayıt silme
- Veritabanında kayıt arama
gibi istediğimiz bir çok işlemleri gerçekleştirmemiz mümkün olucaktır.
Jsf Veritabanı bağlantısı kurmak için bir bean oluşturacağız. Bu bean veritabanına bağlandığında bir “baglandı” bir hata meydana geldiğinde iste “baglanmadı” şeklinde bir değer döndürecek ve bu değere göre biz bir mesaj göstereceğiz.
Şimdi yapacağımız işlem yukarıda açıkladığım gibi baglan.java adında bir bean oluşturacağız. Bu bean ile veritabına bağlantı yapılıp yapılmadığı anlayacağız. baglan.java isminde bir bean oluşturalım.
import javax.faces.bean.ManagedBean; import javax.faces.bean.RequestScoped; import java.sql.*; /** * * @author Burak KUTBAY * @site www.burakkutbay.com * @blog blog.burakkıtbay.com */ @ManagedBean @RequestScoped public class data_con{ int i=0; public String baglan() { PreparedStatement ps=null; Connection con=null; try{ Class.forName("com.mysql.jdbc.Driver"); con=DriverManager.getConnection("jdbc:mysql://localhost:3306/uye","root","1"); i++; } catch(Exception e) { System.out.println(e); } if (i!=){ return "baglandi";} else { return "baglanmadi";} } }
Bean’imizi oluşturduk ancak burada dikkat etmemiz gereken nokta yazılımı çalıştırmadan önce kütüphanemize Mysql’i eklemeyi unutmayınız. Bu bean Uye adlı veritabanımıza bağlanmaya çalışacak ve duruma göre bize bir deger döndürecek bu değere göre kullanıcıya ilgili sayfalar gösterebilmemiz mümkün olucak.
Şimdi index.xhml sayfamızı oluşturalım. Bu sayfada bir ekleme yapılmayacak staandart bir index.xhml sayfası olucaktır.
<?xml version='1.0' encoding='UTF-8' ?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xmlns:h="http://xmlns.jcp.org/jsf/html" xmlns:f="http://xmlns.jcp.org/jsf/core"> <h:head> <title>index sayfası</title> </h:head> <h:body> <h2>Bağlantı Durum</h2> </h:body> </html>
Anasayfamızı hazırladık şimdi bağlantının başarılı ve başarısız durumunda gösterilecek sayfaları hazırlaycağız bu sayfalar bean’imizden gelen değere göre kullanıcıya gösterilecektir.
Şimdi bağlantı başarılı olduğundan gösterilecek olan basarili.xhtml sayfasını yapıyoruz.
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xmlns:h="http://xmlns.jcp.org/jsf/html"> <h:head> <title>Baglantı Başarılı</title> </h:head> <h:body> <h:outputText value="Bağlantı Başarılı"/> </h:body> </html>
Ardından bağlantı başarısız olduğunda gösterilecek olan basarisiz.xhtml sayfasını yapalım.
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xmlns:h="http://xmlns.jcp.org/jsf/html"> <h:head> <title>Baglantı Başarısız</title> </h:head> <h:body> <h:outputText value="Bağlantı Başarısız"/> </h:body> </html>
Bu sayfalar hazırlandı son olarak yapacağımız ise faces.config.xml dosyamızda kurallar oluşturacağız. Yukarıda da bahsettiğimiz gibi bean’ne gelen cevaba göre gösterilecek sayfaları burada belirleyeceğiz.
<faces-config version="2.2" xmlns="http://xmlns.jcp.org/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-facesconfig_2_2.xsd"> <navigation-rule> <from-view-id>index.xhtml</from-view-id> <navigation-case> <from-action>#{data_com.baglan()}</from-action> <from-outcome>baglandi</from-outcome> <to-view-id>basarili.xhtml</to-view-id> </navigation-case> <navigation-case> <from-action>#{data_con.baglan()}</from-action> <from-outcome>baglanmadi</from-outcome> <to-view-id>basarisiz.xhtml</to-view-id> </navigation-case> </navigation-rule> </faces-config>
Kuralımızıda belirlediğimize göre program çalıştığında bağlantı kurabildiyse basarili.xhtml sayfasına gidecek ve kullanıcıya o sayfayı gösterecek, eğer bağlantı başarısız oldu ise basarisiz.xhml sayfasına gidecek ve kullanıcıya o sayfayı gösterip bilgilendirecektir.
Java Server Faces Dersleri’ne üst menüden ulabilirsiniz.
No Comment! Be the first one.