JSP ile JDBC Baglantilari...
- Sevdanur GENC

- Sep 5, 2011
- 2 min read
Bu makalemde Jsp kodlari ile Veri tabanindaki tablolarimizdan bilgileri html ortamina aktaricaz. Bunun icin java'nin database'i olan jdbc'yi kullanicam. Veri tabani arayuzu olarakta MsSql'i kullanicam. Simdi hatirlatma amacli olarak baslica Jsp Etiketleri'nden bahsetmek istiyorum ;
Tanimlama Etiketleri ; Java degiskenlerini tanimlamak icin kullanilir ve <%! .. %> seklinde olusturulur.
Scriptlet Etiketler ; java ifadelerinden olusan kod parcalarini calistirmak icin kullanilir ve <% .. %> seklinde kullanilir.
Ifade Etiketleri ; butun java ifadelerini calistirmak icin kullanilir ve <%= .. %>seklinde olusturulur.
Bu etiketlerin disinda ; jsp sayfalari icinde yorum satiri olusturmak icin <%-- .. --%> etiketlendirmesi kullanilir.
Jdbc icin oncelikle MsSql'de tablolarimizi olusturalim...
Ve olusturdugumuz tablolarin gorunumleri asagida ki gibidir ;
Tablolarimizi olusturduktan sonra iclerine verilerinizi girebilirsiniz...
Verileri girdikten sonra artik jsp ile ilgili kodlamalarinizi yapabilirsiniz. Isterseniz notepad'inizde isterseniz bir java arayuzunde kodlarinizi yazabilirsiniz... NetBeans'de olusturdugum jsp uzantili sayfalarimizin kodlari su sekildedir ;
urunekle.jsp
Baslangic olarak java'da kullanacagimiz kutuphanelerin paketlerinin isimlerini belirtmemiz lazim bunun icin
; komutlarini yazdiktan hemen sonra sayfanin tasarim gorunumunu ayarlayabilmemiz icin body kisminda bulunacak olan iki text input ve bir de button u form taglari arasina yerlestirerek gerekli olan degerleri atariz.
Form tasarimimizi tamamladiktan sonra geriye veri tabanindan cekecegimiz kayitlarla ilgil jsp kodlarini body tagi icerisine hemen form taglarinin ardindan yazmaya devam ediyoruz.
<%
String urunadi = request.getParameter("txturunad");
String urunfiyat = request.getParameter("txturunfiyat");
if(urunadi != null && urunfiyat != null)
{
try
{
double fiyat = Double.valueOf(urunfiyat);
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
Connection dbconnection = DriverManager.getConnection("jdbc:odbc:AlisverisSitesi");
PreparedStatement statement = dbconnection.prepareStatement("insert into urun(urunadi,fiyat) values(?,?)");
statement.setString(1,urunadi);
statement.setDouble(2,fiyat);
int rowcount = statement.executeUpdate();
statement.close();
if(rowcount==0)
{
System.out.println("urun kaydedilemedi");
}
else
{
System.out.println("urun kaydedildi");
}
}
catch(Exception e)
{
out.println("fiyat alanina sayi degeri girin<br>");
}
}
%>
Kodlamamiz bittikten sonra browser'imizda ekran ciktisini gorebildigimiz gibi bircok yeni kayitta tablomuza ekleyebiliriz.
Peki simdi tablolarimiza veri ekledigimiz gibi, tablolarimizda ki onceden olusturmus oldugumuz verileri html ortamina nasil aktaricaz bunu inceleyelim. Bunun icinde iki yeni jsp sayfasi olusturucaz, bunlardan birisi listelenmis kayitlari gostericek, bir digeri ise listelemis oldugumuz kayitlarin detaylarini barindiracak.
siparis.jsp
Oncelikle yine java'da kullanacagimiz kutuphanelerimizi html ortaminda jsp kodlari ile cagiririz.
siparisdetay.jsp
Java'daki kutuphanelerimi ekledikten hemen sonra jsp kodlarimizi yazmaya basliyoruz...
<html>
<head>
<title>Siparis Detaylarini Listeleme Ekrani</title>
</head>
<body>
<%
if(request.getParameter("id")==null)
response.sendRedirect("siparis.jsp");
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
Connection dbconnection = DriverManager.getConnection("jdbc:odbc:AlisverisSitesi");
PreparedStatement statement = dbconnection.prepareStatement("select urunadi,fiyat,miktar from siparisdetay sd join urun u on (sd.urunid=u.urunid) where siparisid=? ");
statement.setString(1, request.getParameter("id"));
ResultSet resultset = statement.executeQuery();
%>
<table>
<%
while(resultset.next())
{
%>
<tr>
<td width="200">
<%
out.println(resultset.getString("urunadi"));
%>
</td>
<td width="100">
<%
out.println(resultset.getDouble("fiyat"));
%>
</td>
<td width="100">
<%
out.println(resultset.getInt("miktar"));
%>
</td>
</tr>
<%
}
%>
</table>
<%
statement.close();
%>
</body>
</html>
3. kaydimizi tikladiktan sonra ki ekran goruntumuz asagida ki gibidir ;
Comments