[Javalist] 'Pattern'
Keresztes Jozsef
jkeresztes at vati.hu
2012. Jan. 4., Sze, 10:49:04 CET
Ezzel a ?-el azért vitatkoznék. Most képzeld el hogy van egy ilyen parancsod:
INSERT INTO … VALUES(?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)
majd azt mondod hogy a 13. ? legyen XY.
De ugyanezt UPDATE-tel is elképzelheted.
Tehát úgy hivatkozni hogy az N. kérdőjel az nagyon durva.
From: Gábor Garami [mailto:gabor.garami at hron.me]
Sent: Wednesday, January 04, 2012 10:28 AM
To: Java lista
Subject: Re: [Javalist] 'Pattern'
Persze, mert reszben fel akarod talalni a kereket (spring), reszben meg valojaban nem sokkal szebb a te megoldasod, mint a kerdojelezes. Ha valoban a hibak elkerulese a cel, akkor en inkabb a builder pattern fele mennek el, annal biztonsagosabb nem kell.
Ezt a levelet telefonról adták fel ezért esetenként ékezethibákat tartalmazhat.
Garami Gábor
E-mail: gabor.garami at hron.me
Web: http://hron.me
Skype: hron84
MSN: hrgy at vipmail.hu
2012.01.04. 9:31, "Keresztes Jozsef" <jkeresztes at vati.hu> ezt írta:
S mivel valóban nagyon ritkán jön elő egy sql-ben apósztrófok között a kettőspont, megkerülhető egy CHR(58) használatával.
Arra is tudnék megoldást hogy én buherálok és vizsgálgatok aposztrófokat oda-vissza (stringet vágok stb),
de a szép megoldás az lett volna (ezért kérdeztelek titeket) hogy csak annyi változtatással hogy a pattern-t
kiegészítem és egy árva plusz sor sem kerül be a java kódba megoldható-e.
Tényleg megfogalmazható-e csupán a pattern átírásával ?
Aztán sajnos elment a dolog más irányba is (Spring,… )
From: Gábor Garami [mailto:gabor.garami at hron.me]
Sent: Tuesday, January 03, 2012 7:28 PM
To: Java lista
Subject: Re: [Javalist] 'Pattern'
Bocs, hogy belepof, de a feladatra teljesen jo a regex, csak a feladatfelvetes bena volt.
A kigyujtesre a regex: (:[a-z0-9])
Az idezojelek kozti reszeket meg siman uritheted.
Bar megmondom oszinten, ilyen string ertelmes sql queryben nem fordul elo, idezojelek kozott sem. Mivel preprocessben hasznalod fel a regexet, igy ilyenkor meg nincs untrusted user input, utana meg mar mindegy. Csak magadat kell korlatoznod, hogy ne akarj olyat irni, hogy SELECT * FROM valami WHERE ':bla' = :bla. IMHO ez igy kb. sosem fordul elo.
A tokenizalas jo otlet, a regexszel kigyujtott talalatokat vegig lehet keresgelni.
Ezt a levelet telefonr󬠡dtfel ez鲴 esetenk鮴 髥zethibt tartalmazhat.
Garami Gr
E-mail: gabor.garami at hron.me
Web: http://hron.me
Skype: hron84
MSN: hrgy at vipmail.hu
2012.01.03. 18 <tel:2012.01.03.%2018> :11, "Tam᳠Magyar" <magyusz at gmail.com> ezt ?a:
Nem tudom, hogy erre ez a legjobb megoldᳬ de StreamTokenizer helyett
ajᮬom ezt:
http://docs.oracle.com/javase/1.5.0/docs/api/java/util/Scanner.html
ɮ mᲠsikerrel haszn᬴am.
Magyusz
2012/1/3 Suller Andras <suller.andras at gmail.com>:
> 2012/1/3 Keresztes Jozsef <jkeresztes at vati.hu>:
>> Sziasztok !
>>
>> Egy sql stringen bell keresek egy mᳩk stringet, a Matcher 鳠Pattern osztᬹok seg?駩vel,
>> egyszers?k a dolgot, csak a ":" karaktert keressk:
>>
>> Matcher matcher = Pattern.compile(":").matcher(sqlString);
>>
>> A probl魡 azzal van hogy csak azokat a ":" karaktereket szeretn魠megkeresni az sql stringben ami nem aposztr󦯫 k??t van p鬤ᵬ:
>>
>> SELECT 'ez nem'':kell' FROM valami WHERE id = :id and ':' = 'x'
>>
>> Vagyis itt a 2. kett??nt lenne csak talᬡt a t?? nem.
>> Valaki foglalkozott mᲠilyen keres鳩 minta meg?sᶡl ?
>> ɮ egyel??nem tudom elk鰺elni...
>
> Regen hasznaltam mar, de azt hiszem a StreamTokenizer az, ami kezeli
> ezt a problemat. Marmint hogy az '...' szovegreszt egy tokenkent adja
> vissza, igy meguszod a regularis kifejezest.
>
> Andras
> _______________________________________________
> Javalist mailing list
> Javalist at lists.javaforum.hu
> http://lists.javaforum.hu/mailman/listinfo/javalist
_______________________________________________
Javalist mailing list
Javalist at lists.javaforum.hu
http://lists.javaforum.hu/mailman/listinfo/javalist
_______________________________________________
Javalist mailing list
Javalist at lists.javaforum.hu
http://lists.javaforum.hu/mailman/listinfo/javalist
--------- következő rész ---------
Egy csatolt HTML állomány át lett konvertálva...
URL: <http://lists.javaforum.hu/pipermail/javalist/attachments/20120104/d52b97aa/attachment.html>
További információk a(z) Javalist levelezőlistáról