Ilk once proqrami run etmezden qabaq, qarshimizda olan ClassName.java faylini nezerden kecirek. Bu fayl sadece bildiyimiz .txt faylindan ibaretdir. Burada her hansi bir IDE vasitesile proqrami run etdikde, hemin IDE, JDK nin terkibindeki bin package in icindeki javac ni cagirir. javac bizim yazdigimiz ClassName.java faylini bytecodelara cevirir, ve eyni adli .class fayli yaradir. Bu fayl JRE uchun lazimlidir. JRE oz novbesinde elde etdiyi .class formatli fayllardan istifade ederek, OS a davamli olaraq emrler gonderir ve proqrami icra edir. QEYD: JDK , terkibinde compiler ve run etmek uchun istifade olunan komponentleri ozunde saxlayir. Java Development Kit . Proqramcinin ehtiyac duydugu komponentdir. JRE , java da yazilmish proqrami istenilen OS da run etmek uchun, qisaca proqrami run etmek uchun istifade olunur. Java Runtime Environment. yazdigimiz java app i run etmek uchun teleb olunan minimum komponent jre dir. user teref uchun esasen ehtiyac duyulur https://medium.com/@b...
Number bir neche formada gele biler bize. Meselen, 99451xxxxxxx 99455xxxxxxx ve s. 051xxxxxxx 055xxxxxxx ve s. 51xxxxxxx 55xxxxxxx ve s. Bu nomreleri standart formaya salmaq uchun kichik kod : public static String validate (String number){ final String prefix = "994" ; if (number.length() == 12 && number.matches( "^(994)+(50|51|55|70|77|99).*$" )) { return number ; } else if (number.length() == 10 && number.matches( "^(0)+(50|51|55|70|77|99).*$" )) { return prefix + number.substring( 1 ) ; } else if (number.length() == 9 && number.matches( "^(50|51|55|70|77|99).*$" )) { return prefix + number ; } return null; } sonda bize qayidan netice 99451xxxxxxx ve ya 99455xxxxxxx sheklinde olacaq. Eger null qayidarsa, bu methodun cagrildigi yerde uygun helli etmek olar.
Umumiyyetle bu annotation Service Layer de istifade etmek duzgundur. Repository de istifade etmek, Serivce layerden cagrilan her bir Repository method uchun tranzaksiyanin yaradilmasi demekdir. Meselen, UserRepository de save ve remove adli method var tutaq ki ve Transactional annotation u ile qeyd olunub. Service Layerde saveAndRemoveUnused adli method var. Bu method save edib, istifade olunmayanlari remove edecek. Eger Service Layerden bu iki methodu cagirsaq, bu zaman her bir emeliyyat uchun Tranzaksiya achilacaq ki, bu da db ni yora biler. Hell yolu olaraq, Service Layerde bu methodlarin istifade oludugun yerde @Transaction qeyd etmek kifayetdir. Bu zaman bu method ishlediyi vaxt boyunca yalniz bir tranzaksiya achilacaq. save ve update methodlari uchun ayrica tranzaksiya achilmayacaq. Diger istifadesine baxsaq meselen, update method id e gore tapir ve hemin useri hansisa field ni deyishir. Methodun bashina @Transactional yazmaqla, userRepository nin save methodunu cagirm...
Comments
Post a Comment