Jump to content
Forumu Destekleyenlere Katılın ×
Paticik Forumları
2000 lerden beri faal olan, çok şukela bir paylaşım platformuyuz. Hoşgeldiniz.

Java Sorularım (Takıldıkça Soru Eklenecek)


Öne çıkan mesajlar

Mesaj tarihi:
O verinin sana kaç adımda geldiği önemli değil. Vurgu şurda: Servis çağırma işinin JSP'de yapılması iyi bir tasarım değil. JSP seviyesinde geldiğine, o servis önceden çağırılmış, tüm gerekli adımlar yapılmış ve gerekli bilgiler bean'e yazılmış olmalı. JSP'nin tek görevi daha önceden hazırlanmış verileri renderlemek olmalı.

Bean üzerinden metod çağırmaya çalıştığın anda bir yanık kokusu sezmen lazım yani.

[hr]

Database connection konusuna gelince. Genelde işlemlerine başlamadan bağlantı kurup, bittiğinde kopartmak tercih ediliyor. Çok kullanıcı olan sistemlerde genelde application server tarafında bir connection pool tanımlanır. Sen bağlantı kurmak istediğinde connection pool'dan bir connection alırsın. Kopardığın zaman da pool'a geri döner.
Mesaj tarihi:
Tecrübelerinize dayanarak :

20 mb lik XML (XSD schema formatinda) bir dosyayi java ile incelemem gerekecek. Hangi apiyi kullanma mi tavsiye edersiniz ?

Daha dogrusu api ile hasir nesir olmaya baslayacagim ogrenmek icin, icinden istedigim seyleri alabilmek adina.


SAX ve DOM a biraz goz attim, sax hizli dumduz parseler, dom agac seklinde parseler gibi birseyler diyor. Yani ikisine goz attim sadece, baska APIler varsa isime yarayacak bilgisi olan varsa yazabilir, zaten arastiricam ugrasicam ama en azindan dogrusundan baslarim.

birde REGEX die birsey var, burda xml parser ile birlikte REGEX kullanmayi planliyorum bazi seyler icin bilgi toplamak icin icinden vesaire. Baska bildigim yontem yok, sizce ne olabilir ?
Mesaj tarihi:
http://docs.oracle.com/cd/E17802_01/webservices/webservices/docs/1.6/tutorial/doc/SJSXP2.html


xml yazabiliyor mu ?

bu linktekine gore SAX da yok vesaire oyle bisi. Requirement kismi acik su anda olayin ondan cok bisi soyleyemiyorum ama inceledigim FIBEX i (XML dosyasi- haberlesme sistemlerinin sinyal degisimlerini tanimlayan dosya yani) guncelleyebilirsem tekrar guzel olur.

JAXB a da bakiyorum simdi-
Mesaj tarihi:
JAXB'nin olayı xml yazmak zaten
xsd yaratıyorsun bir tane sonra veriyorsun jaxb'ye bir compile ediyor sana tüm classların factory pattern halinde çat projende beliriyor.
Mesaj tarihi:
yarin bakicamda, sax ve jaxb beraber kullanma hedesi die bisi gordum cikmadan. Jaxb biraz memory yiyormus, saxla kullanin falan demisler.

Tecrubem yok bu alanda ama data biraz buyuk geliyor bana elimdeki 20 mb kadar, icerisinde 4000 sinyale ait bilgiler var. Bu data yi gercekten buyuk olarak degerlendirebilir miyiz ?
Mesaj tarihi:
JAXB XML dökümanlarını parse edip Java nesnelerine atmak için ya da tam tersi Java nesnelerinden XML üretmek için kullanılıyor. JAXB içindeki tool'lar ile XSD ya da XML kullanarak JAXB class'ları yaratabiliyorsun. Ya da tam tersi elindeki var olan Java nesnelerini kullanarak XSD üretebiliyorsun.

Şimdi elindeki 20 MB'lik döküman var. Bunu DOM Parser ile parse edip DOM ağacı haline çevirsen de JAXB ile Java nesnesine çevirsen de bütün dökümanı memory'ye atmış oluyorsun. 20 MB çok da büyük değil. Uzun sürse de (1 dakka?) rahat işlenebilir.

Performans sorun olacaksa dökümanı memory'ye atmadan SAX ile döküman üstünden geçerek belli taglerde işlem yaptırabilirsin.
Mesaj tarihi:
Bu jaxb beni ugrastiricak sanirim :

Hata veriyor xjc komutu ile semadan classlari olusturmak istedigimde.


PDUTYPE classindan iki tane var customization ile hatayi duzelt diyor. (use a class customization to resolve this conflict)

Verdigi satirlara bakiyorum Schema (xsd) icinde, elemanlardan birisinin adi PDUTYPE digerinin adi PDU-TYPE


googledan : iste isimlernden birini az degistirin gibi cozumler var. Iyide bu semalar standart , degistirmem mumkun degil ?
Mesaj tarihi:
Semada PDUTYPE ve PDU-TYPE iki farkli element mi var? Semada öyle bir sey olmasi bir garip ama aklima gelen ilk cözüm önerisi:

Semayi (XSD dosyasini yani) yedekle. Sonra semayi editle ve PDU-TYPE elemaninin ismini PDUTYPE2 olarak degistir. Sonra xjc ile class'larini üret. Semayi eski haline döndür.

xjc ile üretilmis olan Pdutype2 class'ini ac, üstteki annotation'larda @XmlRootElement(name = "PDUTYPE2") olacak. Onu @XmlRootElement(name = "PDU-TYPE") olarak degistir. Edit: @XmlRootElement yerine @XmlType de olabilir elementin yerine göre.

Simdi unmarshall ettiginde PDUTYPE elemantleri Pdutype class'ina, PDU-TYPE elementleri Pdutype2 class'ina eslestirmesi lazim.

Edit: O elementin buludugu tüm class'lari aratip @XmlElement(name = "PDUTYPE2") annotationlarini da @XmlElement(name = "PDU-TYPE") olarak degistirmen gerekecek muhtemelen.
Mesaj tarihi:
Sunu da denedim pardon bnenzer cozum

http://www.humbug.in/stackoverflow/de/unable-to-generate-classes-from-jaxb-in-maven-environment-5993611.html

link

May be you have two sub-elements with the same name, so the generated class name is the same? If this is the case, you can customized the produced class name using the schema annotations: First add the following namespaces to your xsd:


Second add annotation for the relevant element:

This is my class.

Mesaj tarihi:
Oldu simdi.. 3 4 tane boyle hata vardi, PDU TYP icin olan hata kayboldu digerlerinede ekliyip deniycem bi.

Bir tanede farkli bir hata var class customization disinda, onu da cozmek lazim :)

Two declarations cause a collision in the objectfactoryclass


onada bir bakicam once diger hatalari fixleyip, belki gider bunu yapinca




EDIT : oldu tum hatalari fixledim.




simpleType name="FRAMETYPE">


Bunun gibi elemanlar arasinda hata veriyordu. KomplexType nedir onu tam anlamadim bakicam simdi.


KomplexType de suymus

The complexType element defines a complex type. A complex type element is an XML element that contains other elements and/or attributes.
Element Information

* Parent elements: element, redefine, schema


isimlerde sapitiyor herhalde aradaki - isaretini algilamiyor.

simdi oldu. Classlari farkli yere saklamayi okumam lazim, cikan klasslar nerde bilmiyorum henuz :) Sirayla oluyor. Tavsiyeler icin thnx
Mesaj tarihi:
selamlar saçma sapan anlam veremediğim basitlikten ölen bir soru sorayım.

foksiyonumda


String gender = getGender(); // getGender() bir tane string M ya da F döndürüyor
int x = 0;
if(gender = "M"){
x = 3;
}else{
x = 4;
}


burda bana String halinde M basmasına rağmen if lerin içine girmiyor.nedendir ?aklıma ihtimal gelmedi bir sorayım dedim
Mesaj tarihi:
gender'ın içine attığına emin misin? bi debug etsene.

eğer doğruysa,

if ( gender.intern() ="M" ) i denesene bi böle işe yaraması lazım

ayrıca "=" deil "==" kullanman lazım

gender.intern() =="M"
Mesaj tarihi:
eminim output olarak M basıyor zaten,ayar oldum.o dediklerinizi bir deneyip döneyim hemen

bu arada size sorarken yanlış yazmışım zaten == demiştim. equals işimi çözdü fakat aradaki farkı anlamadım.

== ile equals arasında ne fark var ?
Mesaj tarihi:
Cok büyük fark var. Equals esitlik kontrol eder. == ise referanslarin ayni nesneyi gösterip göstermedigini kontrol eder.


new String("A") == new String("A") // false
new String("A").equals(new String("A")) // true
"A" == "A" // true (bakiniz Java String pooling)


Equals metodunun tam ne olarak neyi kontrol ettigini her class kendi belirler. Class equals metodunu tanimlamamissa equals ve == tamamen ayni isi yapar.
Mesaj tarihi:
Mirage said:


"A" == "A" // true (bakiniz Java String pooling)



bir şey daha sorayım o zaman.


String x = "M";

private String getX(){
String a = "M";

return a;
}

x == getx()

neden aynı olmuyor işte.o senin dediğin olaya göre olması gerekmez miydi?
×
×
  • Yeni Oluştur...