مشخصات مقاله
آموزش Spring Boot
آموزش Spring Boot
آموزش Spring Boot مفاهیم پایه و پیشرفته فریمورک Spring را ارائه می کند. آموزش Spring Boot ما، هم برای افراد مبتدی و هم افراد حرفه ای طراحی شده است. Spring Boot یک ماژول Spring است که ویژگی RAD (توسعه سریع برنامه) را برای فریمورک Spring ارائه می کند.
آموزش Spring Boot ما تمامی سر فصل های Spring Boot را شامل می شود از جمله، ویژگی ها، پروژه، پروژه maven ، starter project wizard ، راه انداز Spring (Spring Initializer)، CLI ، برنامه های کاربردی، نمادها، مدیریت وابستگی، خصیصه ها، مبتدی ها (starters)، فعال کننده (Actuator) ، JPA ، JDBC و غیره.
Spring Boot چیست
Spring Boot یک پروژه است که روی فریمورک Spring ساخته می شود و راهی ساده تر و سریع تر برای راه اندازی، پیکربندی و اجرای برنامه های ساده و تحت وب ارائه می کند. Spring Boot یک ماژول Spring است که ویژگی RAD (توسعه سریع برنامه) را برای فریمورک Spring ارائه می کند. از آن برای ساخت برنامه کاربردی مبتنی بر Spring مستقل استفاده می شود که میتوانید آنرا اجرا کنید زیرا حداقل پیکربندی Spring را لازم دارد.

به طور خلاصه، Spring Boot ترکیب فریمورک Spring و سرورهای نهفته (Embedded Servers) است. در Spring Boot، هیچ نیازی به پیکربندی xml نیست (توصیف گر گسترش- deployment descriptor). Spring Boot از الگوی طراحی نرم افزار قراردادی به جای پیکربندی استفاده می کند، که به این معنی است که میزان زحمت توسعه دهنده را کاهش می دهد.
می توان از Spring STS IDE یا Spring Initializer برای ساخت برنامه های جاوای Spring Boot استفاده کرد.
چرا باید از فریمورک Spring Boot استفاده کنیم؟
باید از فریمورک Spring Boot استفاده کنیم زیرا :
- روش تزریق وابستگی در Spring Boot استفاده می شود.
- شامل قابلیت های قدرتمند در زمینه مدیریت معاملات پایگاه داده است.
- ادغام با سایر فریمورک های جاوا از جمله JPA/Hibernate ORM وStruts را آسان می کند.
- زمان و هزینه توسعه برنامه کاربردی را کاهش می دهد.
علاوه بر فریمورک Spring Boot، بسیاری دیگر از پروژه های خواهر Spring به ساخت برنامه هایی به منظور رفع نیازهای تجاری مدرن کمک می کنند. پروژه های خواهر Spring به شرح زیر است :
- Spring Data : دسترسی به داده از پایگاه داده های وابسته و NoSQL را تسهیل می کند.
- Spring Batch : پردازش قوی دسته ای (batch) را ارائه می کند.
- Spring Security : یک فریمورک امنیت است که برای برنامه های کاربردی امنیت قوی فراهم می کند.
- Spring Social : از ادغام با شبکه های اجتماعی مانند LinkedIn پشتیبانی می کند.
- Spring Integration : پیاده سازی الگوهای ادغام سازمانی است و با استفاده از پیام رسانی سبک و هماهنگ کننده های اعلانی، ادغام با سایر برنامه های سازمانی را تسهیل می کند.
مزیت های Spring Boot
- برنامه های کاربردی مستقل اسپرینگ ایجاد می کند که می توانند با استفاده از-jar جاوا شروع شوند.
- با کمک سرورهای HTTP نهفته مختلف از جمله Tomcat وJetty ، برنامه های کاربردی تحت وب را به سادگی میتواند تست کند. نیاز به استقرار فایل های WAR نیست.
- POM های مبتدی برای ساده سازی پیکربندی maven ما ارائه می کند.
- ویژگی های آماده تولید مانند معیارها، بررسی های بهداشتی و پیکربندی های خارجی را ارائه می کند.
- نیاز به پیکربندی XML ندارد.
- یک ابزار CLI برای توسعه و تست برنامه Spring Boot ارائه می دهد.
- تعداد plug-in ها را ارائه می دهد.
- همچنین نوشتن چندین کد boilerplate (کدی که باید در مکان های بسیاری بدون تغییر یا با تغییر اندک قرار گیرد)، پیکربندی XML و نمادگذاری ها را به حداقل می رساند.
- بهره وری را افزایش و زمان توسعه را کاهش می دهد.
محدودیت های Spring Boot
Spring Boot میتواند از وابستگی هایی که در برنامه استفاده نخواهند شد، استفاده کند. این وابستگی ها اندازه برنامه را افزایش می دهند.
اهداف Spring Boot
هدف اصلی از Spring Boot کاهش سطح توسعه، تست واحد و زمان تست یکپارچه سازی است.
- روش توسعه Opinionated را ارائه می کند.
- از تعریف پیکربندی نمادهای بیشتر خودداری می کند.
- از نوشتن زیاد عبارات واردات (import) خودداری می کند.
- از پیکربندی XML خودداری می کند.
با ارائه نکات ذکر شده یا خودداری از آنها، فریمورک Spring Boot زمان توسعه و میزان تلاش توسعه دهنده را کاهش و بهره وری را افزایش می دهد.
پیش نیاز Spring Boot
برای ساخت یک برنامه Spring Boot، موارد زیر پیش نیاز هستند. در اینجا ما از IDE Spring Tool Suite (STS) استفاده می کنیم.
- Java 1.8
- Maven 3.0+
- Spring Framework 5.0.0.BUILD-SNAPSHOT
- IDE STS توصیه می شود.
ویژگی های Spring Boot
توسعه وب – SpringApplication – رخدادها و شنونده های برنامه (events and listeners) – ویژگی های ادمین – پیکربندی بیرونی سازی شده – فایل های خصیصه ها – پشتیبانی YAML – پیکربندی ایمن از نوع – ورود به سیستم – امنیت
توسعه وب :
این یک ماژول Spring، مناسب برای توسعه برنامه های تحت وب است. به سادگی می توان یک برنامه HTTP جامع ایجاد کرد که از سرورهای نهفته مانند Tomcat ، Jetty و Undertow استفاده کند. میتوان از ماژول spring-boot-starter-web برای شروع و اجرای سریع برنامه استفاده کرد.
SpringApplication :
SpringApplication کلاسی است که روشی مناسب برای راه اندازی یک برنامه Spring فراهم می کند و می تواند از متد اصلی شروع شود. می توان تنها با فراخوانی متد run() ایستا، برنامه را صدا کرد.
1 2 3 4 5 | public static void main(String[] args) { SpringApplication.run(ClassName. class , args); } <button></button> |
رخدادها و شنونده های برنامه :
Spring Boot برای مدیریت وظایف مختلف، از رخداد ها استفاده می کند که این امکان را به ما می دهد تا فایل کارخانه ها(factories) را ایجاد کنیم که برای اضافه کردن شنونده ها (listeners) استفاده می شود. میتوان آن را به کلید ApplicationListener ارجاع داد. فایل کارخانه ها را همیشه در پوشه META-INF ایجاد کنید مانند META-INF/spring.factories.
پشتیبانی ادمین :
Spring Boot تسهیلاتی برای فعالسازی ویژگی های مربوط به ادمین برای برنامه کاربردی فراهم می کند. از این امکانات برای دسترسی و مدیریت برنامه ها از راه دور استفاده می شود. با استفاده از خصیصه spring.application.admin.enabled میتوان آن را در برنامه Spring Boot فعال کرد.
پیکربندی بیرونی سازی شده :
Spring Boot امکان بیرونی سازی(externalize) پیکربندی ما را فراهم می کند، بنابراین، میتوان در محیط های مختلف از برنامه مشابه استفاده کرد. برنامه از فایل های YAML برای بیرونی سازی پیکربندی استفاده می کند.
فایل های خصیصه ها :
Spring Boot مجموعه ای غنی از خصیصه های برنامه کاربردی فراهم می کند. بنابراین، میتوان از آن در فایل خصیصه های پروژه استفاده کرد. از فایل خصیصه ها برای اختصاص خصیصه مانند server-port =8082 و بسیاری دیگر استفاده می شود. این فایل ها به سازماندهی خصیصه های برنامه کمک می کند.
پشتیبانی YAML :
یک روش مناسب برای تعیین پیکربندی سلسله مراتبی فراهم می کند. این یک سوپرست (superset) JSON است. کلاس SpringApplication به صورت خودکار از YAML پشتیبانی می کند. این جایگزین فایل خصیصه ها است.
پیکربندی ایمن از نوع :
پیکربندی ایمن از نوع قوی، برای کنترل و اعتبار سنجی پیکربندی برنامه فراهم شده است. پیکربندی برنامه همیشه یک وظیفه مهم است که باید ایمن از نوع باشد. همچنین میتوان از نمادگذاری فراهم شده توسط این کتابخانه نیز استفاده کرد.
ثبت وقایع :
Spring Boot از سیستم ورود متداول برای ورود داخلی استفاده می کند. وابستگی های ورود به سیستم به صورت پیش فرض مدیریت می شوند. در صورتی که نیاز به هیچ تغییر و سفارشی سازی نباشد، نباید وابستگی های ورود به سیستم را تغییر دهیم.
امنیت :
برنامه های Spring Boot برنامه های تحت وب مبتنی بر Spring هستند. بنابراین به صورت پیش فرض با احراز هویت اولیه در همه نقاط پایانی (endpoint) HTTP امن هستند. مجموعه ای قوی از نقاط پایانی برای ساخت یک برنامه امن Spring Boot در دسترس است.
پیش نیاز :
پیش از یادگیری Spring Boot، باید دانش پایه مربوط به فریمورک Spring را داشته باشید.
مخاطبان :
آموزش Spring Boot ما هم برای افراد مبتدی و هم حرفه ای طراحی شده است.
مشکل :
ما به شما این اطمینان را می دهیم که هیچ مشکلی در آموزش Spring Boot وجود ندارد. اما اگر هر گونه مشکلی وجود داشت، لطفا آن را در فرم ارتباط با ما ارسال کنید.