در این دوره چه میآموزید؟
Spring Batch چیست؟
Spring Batch یک فریمورک متنباز برای پردازش دستهای (Batch Processing) است. این فریمورک یک راهکار سبک اما جامع به شمار میرود که با هدف توسعه برنامههای Batch پایدار و قابلاعتماد طراحی شده است؛ برنامههایی که معمولاً در سامانههای سازمانی مدرن بهوفور یافت میشوند. Spring Batch بر پایه رویکرد توسعه مبتنی بر POJO در Spring Framework بنا شده است.
Spring Batch مجموعهای از قابلیتهای قابلاستفادهمجدد ارائه میدهد که برای پردازش حجم بالای رکوردها حیاتی هستند؛ از جمله لاگگیری و رهگیری، مدیریت تراکنش، آمار پردازش Job، قابلیت ادامه اجرای Job (Restart)، نادیدهگیری خطاها (Skip) و مدیریت منابع.
این فریمورک همچنین سرویسهای فنی پیشرفته و قابلیتهایی ارائه میدهد که با استفاده از تکنیکهای بهینهسازی و پارتیشنبندی (Partitioning)، امکان اجرای Jobهای بسیار حجیم و با کارایی بالا را فراهم میسازد.
چه Jobهای ساده و چه Jobهای پیچیده و حجیم، همگی میتوانند با بهرهگیری از Spring Batch بهصورت بسیار مقیاسپذیر، حجم قابلتوجهی از دادهها را پردازش کنند.
Spring Batch بخشی از پورتفوی Spring به شمار میرود.
نسخه 1.0.0 این فریمورک در مارس 2008 منتشر شد و نسخه 2.0.0 نیز در آوریل 2009 در دسترس عموم قرار گرفت.
با شروع دوره Spring Batch چه ارزشی به دانشجویان شرکت کننده اضافه می شود؟
- یادگیری پردازش دادههای دستهای (Batch Processing) که پایه بسیاری از سیستمهای بانکی، بیمه، بیمه سلامت و تجارت الکترونیک است.
- درک معماری و مفاهیم Enterprise Batch مثل Job, Step, Chunk Processing، Retry/Skip، Transaction Management.
- توانایی طراحی Pipelineهای پردازشی قابل اطمینان و مقیاسپذیر.
- مهارت در مدیریت خطا، Restartability و fault tolerance برای سیستمهای تولید واقعی.
- تجربه عملی با Spring Batch و Spring Boot و آشنایی با JobRepository، Listeners و Monitoring.
- آمادهسازی برای بازار کار Enterprise Java و سیستمهایی که حجم داده زیاد دارند.
دستاوردهای دانشجویان بعد از پایان دوره Spring Batch چه خواهد بود؟
بعد از اتمام دوره، دانشجویان قادر خواهند بود:
- یک Job کامل Spring Batch بسازند و Stepهای مختلف آن را مدیریت کنند.
- انواع Reader, Processor, Writer را پیادهسازی و بهینه کنند.
- خطاها و استثناها را در پردازش دادهها مدیریت کنند (Skip/Retry/Dead Letter Queue).
- Jobها را مانیتور و مدیریت کنند و از دادههای متادیتا (Execution, StepExecution) استفاده کنند.
- Jobهای چند مرحلهای و شرطی طراحی کنند (Conditional Steps, Job Flow).
- Jobهای خود را با Parallelism و Partitioning مقیاسپذیر کنند.
- Jobها و Stepها را در محیط واقعی و با دیتابیس عملیاتی اجرا و تست کنند.
دوره Spring Batch برای چه کسانی مناسب است؟
- توسعهدهندگان Java که با Spring Boot آشنا هستند و میخواهند مهارت خود را به سطح Enterprise ارتقا دهند.
- علاقهمندان به ETL، Big Data، یا پردازش دادههای حجیم.
- کسانی که میخواهند در بانک، بیمه، مخابرات یا سیستمهای ERP کار کنند.
- توسعهدهندگانی که میخواهند با Jobهای قابل اطمینان و مدیریتشده آشنا شوند.
این دوره برای چه کسانی مناسب نیست؟
- کسانی که تازه با جاوا یا Spring Boot آشنا شدهاند و هنوز مباحث پایهای را یاد نگرفتهاند.
- افرادی که فقط به کار با دیتابیس یا Frontend ساده علاقه دارند و قصد طراحی پردازش Batch ندارند.
- کسانی که نمیخواهند با مدیریت Jobها، متادیتا و fault-tolerance آشنا شوند.
- کسانی که اهل تمرین،پروژه زدن و تکرار نیستند و یجای یادگیری فقط میخواهند تماشا کنند
- کسانی که عمل گرا نیستند و در مسیر یادگیری اقدام نمی کنند.
- افرادی که با چالش ،خطا و Debugging مشکل دارند و حاضر نیستند فرآیند واقعی یادگیری را تجربه کنند.
- کسانی که نمی خواهد با کسب مهارت جدید جایگاه فعلی خود را ارتقا دهند.
این دوره، شما را از یک برنامهنویس معمولی Spring Boot به یک متخصص طراحی و پیادهسازی پردازشهای دستهای و Enterprise-ready تبدیل میکند. شما مهارتهایی یاد میگیرید که در پروژههای بزرگ بانکی، بیمه و تجارت الکترونیک کاملاً ارزشمند است و اکثر شرکتها دنبال چنین تجربهای هستند.

فصل اول:مقدمه و مفاهیم پایه Spring Batch
1.1.آشنایی با Spring Batch و کاربردهای آن در پردازشهای حجیم و زمانبندیشده
ویدئو
پیشنمایش
خصوصی
این درس خصوصی است. برای مشاهده باید دوره را خریداری کنید.
2.1. معرفی مفاهیم اصلی Step ،JobRepository و JobLauncher در Spring Batch
ویدئو
خصوصی
این درس خصوصی است. برای مشاهده باید دوره را خریداری کنید.
3.1. مقایسه Batch Processing و Stream Processing و بررسی تفاوتهای کلیدی
ویدئو
خصوصی
این درس خصوصی است. برای مشاهده باید دوره را خریداری کنید.
4.1. اجرای اولین Job در Spring Batch و آشنایی با ساختار اولیه پروژه
ویدئو
خصوصی
این درس خصوصی است. برای مشاهده باید دوره را خریداری کنید.

فصل دوم: کار با Job و Chunk Processing
1.2. آشنایی با Job Parameters و نحوه ارسال پارامتر به Job
ویدئو
خصوصی
این درس خصوصی است. برای مشاهده باید دوره را خریداری کنید.
2.2. پیادهسازی Tasklet به همراه Multi Step Job در Spring Batch
ویدئو
خصوصی
این درس خصوصی است. برای مشاهده باید دوره را خریداری کنید.
3.2. خواندن و استفاده از پارامترها در Step و Job
ویدئو
خصوصی
این درس خصوصی است. برای مشاهده باید دوره را خریداری کنید.
4.2. مفهوم Chunk در Spring Batch چیست و چگونه کار میکند
ویدئو
خصوصی
این درس خصوصی است. برای مشاهده باید دوره را خریداری کنید.
5.2. پیادهسازی یک Job مبتنی بر Chunk به صورت عملی
ویدئو
خصوصی
این درس خصوصی است. برای مشاهده باید دوره را خریداری کنید.
6.2. بررسی مفاهیم JobParameters، JobInstance، JobExecution و StepExecution
ویدئو
خصوصی
این درس خصوصی است. برای مشاهده باید دوره را خریداری کنید.
7.2. پیادهسازی Job با استفاده از Tasklet و Chunk در یک پروژه واقعی
ویدئو
خصوصی
این درس خصوصی است. برای مشاهده باید دوره را خریداری کنید.

فصل سوم: کار با Reader و Writer در Spring Batch
1.3. آموزش کار با FlatFileItemReader برای خواندن فایلهای متنی و CSV
ویدئو
خصوصی
این درس خصوصی است. برای مشاهده باید دوره را خریداری کنید.
2.3. آموزش خواندن فایل Excel در Spring Batch با Excel Item Reader
ویدئو
خصوصی
این درس خصوصی است. برای مشاهده باید دوره را خریداری کنید.
3.3. ذخیره اطلاعات در دیتابیس با JdbcItemWriter
ویدئو
خصوصی
این درس خصوصی است. برای مشاهده باید دوره را خریداری کنید.
4.3. کار با JpaItemWriter برای ذخیرهسازی دادهها با JPA
ویدئو
خصوصی
این درس خصوصی است. برای مشاهده باید دوره را خریداری کنید.
5.3. خواندن اطلاعات از دیتابیس با JdbcCursorItemReader
ویدئو
خصوصی
این درس خصوصی است. برای مشاهده باید دوره را خریداری کنید.
6.3. استفاده از JpaPagingItemReader برای خواندن دادهها بهصورت صفحهبندیشده
ویدئو
خصوصی
این درس خصوصی است. برای مشاهده باید دوره را خریداری کنید.
7.3. بررسی Chunk Size و تأثیر آن بر عملکرد و کارایی Job
ویدئو
خصوصی
این درس خصوصی است. برای مشاهده باید دوره را خریداری کنید.

فصل چهارم :کار با دیتابیس در Spring Batch
1.4. آشنایی با نقش دیتابیس در Spring Batch و ساختار ذخیرهسازی متادیتا
ویدئو
خصوصی
این درس خصوصی است. برای مشاهده باید دوره را خریداری کنید.
2.4. آموزش کار با دیتابیس در Spring Batch برای خواندن، پردازش و ذخیره اطلاعات
ویدئو
خصوصی
این درس خصوصی است. برای مشاهده باید دوره را خریداری کنید.
3.4. نکات مهم درباره جداول داخلی Spring Batch و بهترین روش استفاده از آنها
ویدئو
توضیح کوتاه برای درس
خصوصی
این درس خصوصی است. برای مشاهده باید دوره را خریداری کنید.

فصل پنجم : مدیریت خطا و کنترل استثناها
1.5. آموزش Retry و Skip در Spring Batch برای مدیریت خطاها در پردازش
ویدئو
خصوصی
این درس خصوصی است. برای مشاهده باید دوره را خریداری کنید.
2.5. پیادهسازی SkipPolicy و شخصیسازی رفتار سیستم هنگام بروز خطا
ویدئو
خصوصی
این درس خصوصی است. برای مشاهده باید دوره را خریداری کنید.

فصل ششم : بهینهسازی پردازش و مدیریت تراکنش
1.6. اهمیت Order By در پردازش دادهها و جلوگیری از مشکلات خواندن رکوردها
ویدئو
خصوصی
این درس خصوصی است. برای مشاهده باید دوره را خریداری کنید.
2.6. بررسی ارتباط Chunk Size و Commit Interval در کارایی و مدیریت تراکنشها
ویدئو
خصوصی
این درس خصوصی است. برای مشاهده باید دوره را خریداری کنید.

فصل هفتم: Scope و اعتبارسنجی پارامترها
1.7. آشنایی با JobScope و StepScope و کاربرد آنها در Spring Batch
ویدئو
خصوصی
این درس خصوصی است. برای مشاهده باید دوره را خریداری کنید.
2.7. کار با Job Parameter و استفاده از پارامترهای ورودی در اجرای Job
ویدئو
خصوصی
این درس خصوصی است. برای مشاهده باید دوره را خریداری کنید.
3.7. اعتبارسنجی پارامترهای ورودی با JobParametersValidator
ویدئو
خصوصی
این درس خصوصی است. برای مشاهده باید دوره را خریداری کنید.

فصل هشتم:Listener در Spring Batch
1.8. آشنایی با Listenerها در Spring Batch و استفاده از آنها برای کنترل مراحل اجرا
ویدئو
خصوصی
این درس خصوصی است. برای مشاهده باید دوره را خریداری کنید.

فصل نهم: مدیریت جریان اجرای Job
1.9. آموزش Decider و Flow برای پیادهسازی جریانهای شرطی و چندمسیره در Spring Batch
ویدئو
خصوصی
این درس خصوصی است. برای مشاهده باید دوره را خریداری کنید.

فصل دهم: پردازش موازی و Partitioning
1.10. آشنایی با Multi-threaded Processing در Spring Batch و مزایا و محدودیتهای آن
ویدئو
خصوصی
این درس خصوصی است. برای مشاهده باید دوره را خریداری کنید.
2.10. پیادهسازی Multi-threaded Step برای افزایش سرعت پردازش دادهها
ویدئو
خصوصی
این درس خصوصی است. برای مشاهده باید دوره را خریداری کنید.
3.10. آشنایی با Partitioner و مفهوم تقسیم دادهها برای پردازش موازی
ویدئو
خصوصی
این درس خصوصی است. برای مشاهده باید دوره را خریداری کنید.
4.10. پیادهسازی Partitioning در Spring Batch برای پردازش همزمان و مقیاسپذیر
ویدئو
خصوصی
این درس خصوصی است. برای مشاهده باید دوره را خریداری کنید.



