yufyuf
22/01/2003, 05:18
jsp&sevlet kullanarak web programlari gelistirebilmek icin aldigim kitaptaki asagidaki ornek kodu calistiramadim
Sanirim sorun diger .java dosyalarinda tanimanmis olan siniflarin :
a)Urun
b)Adresleme
c)Hesap
bu safada taninmamasi
Aciklayici cevabinizi bekliyorum yeni bir kitapla vakit kaybetmek istemiyorum
TESEKKURLER
package servletlerim.bolum8;
import java.util.*;
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
public class AlisVerisSepeti implements java.io.Serializable {
// Sepete eklenecek ürünler en iyi Vector objesi
// içinde saklanabilir.
protected Vector urunler;
// Constuctor oluşturma
public AlisVerisSepeti()
{
urunler = new Vector();
}
// Bütün ürünlerin alınması
public Vector getUrunler()
{
return (Vector) urunler;
}
// Çoklu ürünler için yeni ekleme.
// Varolan ürünlerden eklenecekse bu ürünün
// talep miktarını artırma, eğer yeni ürün eklenecekse
// yeni bir ekleme yapma.
public synchronized void addUrun(Urun yeniUrun)
{
urunler.addElement(yeniUrun);
}
// Ürünlerden birini çıkarma
// Her ürünün bir sıra numarası var
// Dolayısıyla numarası parametre olarak aktarılıyor.
public synchronized void removeUrun(int urunNumarası)
{
Urun urun = (Urun) urunler.elementAt(urunNumarası);
// Talepten ürün miktarı kadar düşme
urun.talepMiktar -= urun.miktar;
// Eğer talep miktarı sıfırlanmışsa
// ürünü sepetten çıkar
if (urun.talepMiktar <= 0) {
urunler.removeElementAt(urunNumarası);
}
}
protected static int yeniTalepNumara = 1;
// Her bir talep için kayıt etme ve kayda
// numara verme işlemi
public String talepTamamla(Hesap hesaplama, Adresleme adresleme)
throws AlisVerisSepetiHatasi
{
// Her bir kayıt için numara belirleme ve bu
// kayıtların bir dosya içine kaydı.
try {
int talepNumarası = 0;
// Çoklu ulaşımı engelleme
synchronized(this) {
talepNumarası = yeniTalepNumara;
yeniTalepNumara += 1;
}
PrintWriter dosyaYaz = new PrintWriter(
new FileOutputStream("talep" + talepNumarası));
// Hesap bilgilerinin dosyaya yazılması
dosyaYaz.println("--- Kart Bilgileri ---");
dosyaYaz.println("Kart Tipi:" +hesaplama.krediKartTip);
dosyaYaz.println("Kart Numarası:" +hesaplama.krediKartNumara);
dosyaYaz.println("Kart Üst. İsim:" +hesaplama.kartIsim);
dosyaYaz.println();
// Adresleme bilgilerinin dosyaya yazılması
dosyaYaz.println("--- Müşteri Bilgileri ---");
dosyaYaz.println("Adı:" +adresleme.isim);
dosyaYaz.println("Adres:" +adresleme.adres);
dosyaYaz.println("Şehir:" +adresleme.sehir);
if (adresleme.ulke != null) {
dosyaYaz.println("Ülke:" +adresleme.ulke);
}
if (adresleme.postaKodu != null) {
dosyaYaz.println("Posta Kodu:" +adresleme.postaKodu);
}
if (adresleme.telefon != null) {
dosyaYaz.println("Telefon:" +adresleme.telefon);
}
if (adresleme.ePosta != null) {
dosyaYaz.println("E Posta:" +adresleme.ePosta);
}
dosyaYaz.println();
// Ürün bilgilerinin yazılması
dosyaYaz.println("--- Talep edilen Ürünler ---");
dosyaYaz.println("Ürün Kodu Fiyatı Miktarı ");
Enumeration e = urunler.elements();
while (e.hasMoreElements()) {
Urun urun = (Urun) e.nextElement();
dosyaYaz.println(urun.kod + ", " +
urun.fiyat + ", " +
urun.talepMiktar);
}
dosyaYaz.close();
// Talep numarasını gönderme
return "" + talepNumarası;
}
catch (Exception hata) {
throw new AlisVerisSepetiHatasi(
"Talep kaydedilirken hata oluştu:" +
hata.toString());
}
}
}
Sanirim sorun diger .java dosyalarinda tanimanmis olan siniflarin :
a)Urun
b)Adresleme
c)Hesap
bu safada taninmamasi
Aciklayici cevabinizi bekliyorum yeni bir kitapla vakit kaybetmek istemiyorum
TESEKKURLER
package servletlerim.bolum8;
import java.util.*;
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
public class AlisVerisSepeti implements java.io.Serializable {
// Sepete eklenecek ürünler en iyi Vector objesi
// içinde saklanabilir.
protected Vector urunler;
// Constuctor oluşturma
public AlisVerisSepeti()
{
urunler = new Vector();
}
// Bütün ürünlerin alınması
public Vector getUrunler()
{
return (Vector) urunler;
}
// Çoklu ürünler için yeni ekleme.
// Varolan ürünlerden eklenecekse bu ürünün
// talep miktarını artırma, eğer yeni ürün eklenecekse
// yeni bir ekleme yapma.
public synchronized void addUrun(Urun yeniUrun)
{
urunler.addElement(yeniUrun);
}
// Ürünlerden birini çıkarma
// Her ürünün bir sıra numarası var
// Dolayısıyla numarası parametre olarak aktarılıyor.
public synchronized void removeUrun(int urunNumarası)
{
Urun urun = (Urun) urunler.elementAt(urunNumarası);
// Talepten ürün miktarı kadar düşme
urun.talepMiktar -= urun.miktar;
// Eğer talep miktarı sıfırlanmışsa
// ürünü sepetten çıkar
if (urun.talepMiktar <= 0) {
urunler.removeElementAt(urunNumarası);
}
}
protected static int yeniTalepNumara = 1;
// Her bir talep için kayıt etme ve kayda
// numara verme işlemi
public String talepTamamla(Hesap hesaplama, Adresleme adresleme)
throws AlisVerisSepetiHatasi
{
// Her bir kayıt için numara belirleme ve bu
// kayıtların bir dosya içine kaydı.
try {
int talepNumarası = 0;
// Çoklu ulaşımı engelleme
synchronized(this) {
talepNumarası = yeniTalepNumara;
yeniTalepNumara += 1;
}
PrintWriter dosyaYaz = new PrintWriter(
new FileOutputStream("talep" + talepNumarası));
// Hesap bilgilerinin dosyaya yazılması
dosyaYaz.println("--- Kart Bilgileri ---");
dosyaYaz.println("Kart Tipi:" +hesaplama.krediKartTip);
dosyaYaz.println("Kart Numarası:" +hesaplama.krediKartNumara);
dosyaYaz.println("Kart Üst. İsim:" +hesaplama.kartIsim);
dosyaYaz.println();
// Adresleme bilgilerinin dosyaya yazılması
dosyaYaz.println("--- Müşteri Bilgileri ---");
dosyaYaz.println("Adı:" +adresleme.isim);
dosyaYaz.println("Adres:" +adresleme.adres);
dosyaYaz.println("Şehir:" +adresleme.sehir);
if (adresleme.ulke != null) {
dosyaYaz.println("Ülke:" +adresleme.ulke);
}
if (adresleme.postaKodu != null) {
dosyaYaz.println("Posta Kodu:" +adresleme.postaKodu);
}
if (adresleme.telefon != null) {
dosyaYaz.println("Telefon:" +adresleme.telefon);
}
if (adresleme.ePosta != null) {
dosyaYaz.println("E Posta:" +adresleme.ePosta);
}
dosyaYaz.println();
// Ürün bilgilerinin yazılması
dosyaYaz.println("--- Talep edilen Ürünler ---");
dosyaYaz.println("Ürün Kodu Fiyatı Miktarı ");
Enumeration e = urunler.elements();
while (e.hasMoreElements()) {
Urun urun = (Urun) e.nextElement();
dosyaYaz.println(urun.kod + ", " +
urun.fiyat + ", " +
urun.talepMiktar);
}
dosyaYaz.close();
// Talep numarasını gönderme
return "" + talepNumarası;
}
catch (Exception hata) {
throw new AlisVerisSepetiHatasi(
"Talep kaydedilirken hata oluştu:" +
hata.toString());
}
}
}