ارث بری در جاوا

ارث بری (inheritance) یک مفهوم بنیادی و کلیدی در برنامه‌نویسی شی‌گرا است.در برنامه‌نویسی نیز این واژه مفهمومی مشابه دنیای واقعی دارد و به معنای ارث بردن خصوصیات است. در این نوشته قصد دارم نگاهی دوباره به ارث‌بری در جاوا داشته باشم.

ادامه مطلب

حذف یک موجودیت و وابستگی‌هایش به صورت سلسله مراتبی در فریم ورک اسپرینگ(Spring Framework)

پیش از هر چیز باید بگویم که این نوشته مربوط به برنامه‌نویسی در فریم‌ورک اسپرینگ و هایبرنیت است؛ اگر با این فریم‌ورک آشنایی ندارید، خواندن این نوشته‌ی من در مورد این چهارچوب برنامه‌نویسی می‌تواند برای شما مفید باشد. هایبرنیت یک کتابخانه object-relational mapping برای زبان جاوا است که چارچوبی را برای نگاشتت یک شی به یک پایگاه داده رابطه‌ای فراهم می‌آورد. فرض کنید سه مدل که به صورت سلسله مراتبی و چند سطحی به هم وابستگی دارند؛ به عنوان مثال یک مدل تحت عنوان survey داریم که یک set از مدل question دارد که این مدل هم یک set از مدل option دارد.

ادامه مطلب

استفاده از تگ List در فایل هایبرنت (پیکربندی XML)

پیش از هر چیز باید بگویم که این نوشته مربوط به برنامه‌نویسی در فریم‌ورک اسپرینگ و هایبرنیت است؛ اگر با این فریم‌ورک آشنایی ندارید، خواندن این نوشته‌ی من در مورد این چهارچوب برنامه‌نویسی می‌تواند برای شما مفید باشد. هایبرنیت یک کتابخانه object-relational mapping برای زبان جاوا است که چارچوبی را برای نگاشت یک شی به یک پایگاه داده رابطه‌ای فراهم می‌آورد. فرض کنید مدلی به نام سوالات (Question) داریم که شامل دو یا چند گزینه بوده و ارتباطی یک به چند با مدل گزینه‌ها (Option) دارد؛ باتوجه به اینکه ترتیب گزینه‌های سوال برای ما مهم است و می‌خواهیم هایبرنت به صورت خودکار ترتیب گزینه‌ها را برای ما حفظ کند.

ادامه مطلب

تنظیم header برای استریم فایل‌های بزرگ در فریم ورک اسپرینگ (SpringFramework)

پیش از هر چیز باید بگویم که این نوشته مربوط به برنامه‌نویسی در فریم‌ورک اسپرینگ است؛ اگر با این فریم‌ورک آشنایی ندارید، خواندن این نوشته‌ی من در مورد این چهارچوب برنامه‌نویسی می‌تواند برای شما مفید باشد. فرض کنید که می‌خواهیم از طریق یک rest، یک فایل را که در پایگاه داده یا دایرکتوری فایل وجود دارد را در client نمایش دهیم؛

ادامه مطلب

رفع مشکل Infinite Recursion در خروجی json در فریم ورک اسپرینگ برای مدل‌هایی که ارتباط دو طرفه دارند

پیش از هر چیز باید بگویم که این نوشته مربوط به برنامه‌نویسی در فریم‌ورک اسپرینگ است؛ اگر با این فریم‌ورک آشنایی ندارید، خواندن این نوشته‌ی من در مورد این چهارچوب برنامه‌نویسی می‌تواند برای شما مفید باشد. فرض کنید که دو مدل داریم که با هم ارتباط bi-directional دارند؛ یعنی هر کدام از این مدل‌ها یک property از مدل دیگر دارند؛ view model برای این دو مدل به صورت زیر هستند:

ادامه مطلب

استفاده از JsonView در فریم ورک اسپرینگ (Spring Framework)

پیش از هر چیز باید بگویم که این نوشته مربوط به برنامه‌نویسی در فریم‌ورک اسپرینگ است؛ اگر با این فریم‌ورک آشنایی ندارید، خواندن این نوشته‌ی من در مورد این چهارچوب برنامه‌نویسی می‌تواند برای شما مفید باشد. به طور معمول برای نمایش دیتا به کاربر از view model استفاده می‌کنیم؛ اما گاهی اوقات پیش می‌آید که در جایی از پروژه، تمام فیلدهای view model را نیاز داشته باشیم و در جای دیگر بخشی از این فیلدها مورد نیاز باشد.

ادامه مطلب

چند مثال از عبارت‌های باقاعده (عبارت‌های منظم) در زبان جاوا

عبارت باقاعده، که تحت عنوان regex (مخفف regular expression) نیز نامیده می‌شود در کامپیوتر و برنامه‌نویسی، به معنی تطبیق رشته در متن است؛ به بیانی دیگر عبارت‌های منظم ترکیب‌هایی خاص از حروف و علامت‌ها هستند که برای جستجو و مقایسه‌ی رشته‌ها استفاده می‌شوند. در این نوشته قصد دارم که چند عبارت منظم در زیبان جاوا را بررسی کنم.

ادامه مطلب

بازنویسی url در فریم ورک اسپرینگ (Spring Framework)

پیش از هر چیز باید بگویم که این نوشته مربوط به برنامه‌نویسی در فریم‌ورک اسپرینگ است؛ اگر با این فریم‌ورک آشنایی ندارید، خواندن این نوشته‌ی من در مورد این چهارچوب برنامه‌نویسی می‌تواند برای شما مفید باشد. استفاده از slug (نامک) در آدرس‌ها و url صفحات مزایای زیادی از جمله SEO-friendly و user-friendy را به همراه دارد. tuckey یک dependency برای بازنویسی urlها (rewrite URLs) در زبان جاواست و عملکردی بسیار مشابه mod_rewrite آپاچی دارد.

ادامه مطلب

اعمال نشدن ترتیب برای فرزندان یک مدل در هایبرنیت (Hibernate)

پیش از هر چیز باید بگویم که این نوشته مربوط به برنامه‌نویسی در فریم‌ورک اسپرینگ و هایبرنیت است؛ اگر با این فریم‌ورک آشنایی ندارید، خواندن این نوشته‌ی من در مورد این چهارچوب برنامه‌نویسی می‌تواند برای شما مفید باشد. هایبرنیت یک کتابخانه object-relational mapping برای زبان جاوا است که چارچوبی را برای نگاشت یک شی به یک پایگاه داده رابطه‌ای فراهم می‌آورد. در این نوشته قصد داریم مشکل اعمال نشدن ترتیب برای فرزندان یک مدل در هایبرنیت (Hibernate) را بررسی کنیم.

ادامه مطلب

دادن دسترسی به کاربران Login کرده در Spring-Security

پیش از هر چیز باید بگویم که این نوشته مربوط به برنامه‌نویسی در فریم‌ورک اسپرینگ است؛ اگر با این فریم‌ورک آشنایی ندارید، خواندن این نوشته‌ی من در مورد این چهارچوب برنامه‌نویسی می‌تواند برای شما مفید باشد. پروژه‌ی Spring Security یکی از ابزارهای قدرتمند برای احراز هویت و دادن دسترسی در برنامه‌های اسپرینگ است. در این نوشته قصد داریم به کاربران وارد شده در اپلیکیشن (صرف نظر از هر Roleی که دارند) دسترسی بدهیم.

ادامه مطلب