جاوا و تکنولوژی های آن

java programming language

در این وبلاگ به بررسی نکات موجود در جاوا و تکنولوژی های آن می پردازیم

طبقه بندی موضوعی

در نگاه اول کاربرد استفاده از Annotation های NotNull@ و (Column(nullable = false@ یکسان بنظر می آیند و میتوان بجای یکدیگر استفاده شوند ولی اینگونه نیست.

حتی هنگام استفاده در یک JPA Entity  هر دو annotation از ذخیره مقادیر Null در دیتابیس جلوگیری میکند ولی تفاوت های چشمگیری دارند که در ادامه به آنها میپردازیم 


در Spring با استفاده از Tranctional@ میتوانستیم براحتی تراکنش ها را کنترل کنیم و درگیر جزییات پیاده سازی و Transaction Management نشویم . ولی همیشه استفاده از Transctional@ بهترین روش نیست . در این بخش خواهیم دید که چه راهکارهایی برای کنترل بیشتر روی Transaction مانند TransactionTemplate داریم و مزایای آن چیست 


معمولا هر Entity به یک Table از دیتابیس مرتبط است ولی گاهی نیاز به طراحی Entity ای داریم که به چند Table مرتبط است که در این بخش به بررسی و شرایط مورد نیاز آن می پردازیم 


در برخی موارد خاص نیاز داریم که نتایج کوئری ها را بصورت سفارشی و دلخواه داشته باشیم مانند وقتی که از توابع Aggregation استفاده میکنیم در این بخش خواهیم دید که چگونه میتوان نتایج این نوع از کوئری ها در  دو نوع ابجکت POJO و Spring Data Projection دریافت کنیم 


وقتی از Hibernate استفاده میکنیم میتوانیم از Named Parameter برای بالا بردن میزان اطمینان در ارسال اطلاعات SQL query ها استفاده کنیم اما ممکن است هنگام کار با این پارامتر ها با دو خطای متداول که یکی برای موقعی که بتنهایی از Hibernate استفاده میکنیم و دیگری hibernate پیاده سازی شده JPA بر بخوریم