מדריך פרימוארבה – מדריכי הסביבה היסודית של Spring

אביב הוא אחד מהגדולים ביותר קודי Java EE. Es הכתבתי המון על מדריך Spring, וזהו פוסט סיכום שישמש כאינדקס לעבור דרך כולם לפי סדרם.

מדריך Spring

כל המדריכים של Spring מגיעים עם פרויקטי דוגמה שניתן להוריד מדפי המדריך.

מדריכי ליבת Spring

גוף המסגרת מבוסס על שני עקרונות עיצוב – הזרקת תלות ו־תכנות נובע מהגדרה. אנא עבור דרך המדריכים למידת העקרונות הללו עם דוגמאות ביצוע.

  1. מסגרת Spring מבט קצר על התפתחותה של מסגרת Spring, ארכיטקטורתה, מרכיביה המרכזיים, ועקרונות ההובלה שמנחים את פיתוחה של מסגרת זו המדהימה.
  2. דוגמה להזנת תלות ב-Java פוסט זה מספק את היסודות של הזנת תלות ואיך ניתן לממש את דפוס ה-DI ביישומונים פשוטים ב-Java. זו נקודה טובה להתחיל ולהמשיך להזנת תלות ב-Spring.
  3. הזנת תלות ב-Spring המדריך הזה מטרתו לספק דוגמה להזנת תלות במסגרת ה-Spring עם תצורה על פי הוראות ותצורה על פי XML. המדריך כולל גם תוכנית בדיקת JUnit כדי לוודא את המימוש.
  4. דוגמה ל-AOP ב-Spring מדריך זה מסביר מושגים יסודיים של תכנות המבוסס על נושאים כמו Aspect, Advice, Pointcut, Joinpoint, AOP Proxy ו-Weaving. המדריך מסביר על סוגי Advice שונים עם תוכנית פשוטה.
  5. פרופיל שיטת AOP ב-Spring
  6. מדריך לדוגמה של מקטע הזרמת Spring IoC ו- Spring Bean
    מדריך זה מיועד להסביר את המושגים העיקריים של מקטע הזרמת Spring IoC ו- Spring Bean עם תכניות דוגמה. המדריך מסביר על מקטע הזרמת IoC ועל המחלקות העיקריות שלו ועל דרכים שונות ליצירת ApplicationContext. המדריך מסביר גם על Spring Bean, על טווחי Spring Bean השונים, על דרכים שונות להגדיר Spring Bean – XML, הערה, על בסיס Java דרך פרויקט דוגמה.
  7. טווחי Spring Bean
    טווחי Spring Bean מאפשרים לנו לשלוט בצורה יותר גרנולרית על יצירת מופעי הבונים.
  8. דוגמה לאוטואווירינג של Spring Bean
    מקטע הזרמת Spring IoC הוא חכם מספיק לזהות את הבונים לצורך הזרמת תלויות דרך המאפיין "אוטואוויר של Spring". מדריך זה מסביר על סוגים שונים של התקנות אוטומטיות עם פרויקט דוגמה.
  9. מחזור חיי פולי Spring פולי Spring הם החלק החשוב ביותר של כל אפליקציה Spring. מבנה ה-ApplicationContext של Spring אחראי לאתחול פולי Spring המוגדרים בקובץ התצורה של פול Spring. במדריך זה נבין אילו דרכים שונות קיימות לספק שיטות לאחר האתחול ולפני ההרס בפול Spring – ממשקי InitializingBean/DisposableBean או מאפייני init-method/destroy-method. הגרסה של Spring גם תומכת באננוטציות @PostConstruct ו־@PreDestroy להגדרת שיטות לאחר האתחול ולפני ההרס. אלו הן חלק מחבילת javax.annotation. תלמדו גם על ממשקי Spring Aware שניתן להשתמש בהם להזנת אובייקטים של Servlet API לתוך פול Spring.
  10. Spring 5 Spring 5 הושק בסוף 2017. Spring 5 מביא עדכון עצום למסגרת Spring.
  11. Spring WebFlux Spring WebFlux הוא המודול החדש שהושק ב-Spring 5. Spring WebFlux הוא הצעד הראשון כלפי דגם התכנות הריאקטיבי במסגרת Spring.
  12. Spring Data JPA Spring Data JPA הוא חלק ממשפחת Spring Data. Spring Data עושה את התהליך ליצירת אפליקציות המשתמשות ב-Spring קל יותר, והופך את הגישה לנתונים לתהליכים חדשים, כמו מסדי נתונים לא יחסיים, מסכמי עץ-הפשטה, שירותי ענן, ותמיכה מתקדמת במסדי נתונים יחסיים.

Spring Annotations

  1. Spring Annotations למבט קצר על האנוטציות החשובות ביותר במסגרת של ספרינג.
  2. Spring @Bean אנוטציה @Bean של Spring מיושמת על פונקציה כדי לציין שהיא מחזירה אובייקט (bean) שיש לנהל אותו על ידי ההקשר של Spring. נהוג להצהיר על האנוטציה @Bean בשיטות במחלקות הגדרת התצורה (configuration classes).
  3. Spring @Service אנוטציה @Service של Spring היא התמחות של @Component . אנוטציה זו יכולה להיות מיושמת רק על מחלקות ומשמשת לסימון של מחלקה כספקת שירות.
  4. קיץ @Component ההערה Component של Spring משמשת לסימון של מחלקה כ-Component. זה אומר שהקיץ יזהה אוטומטית מחלקות אלו לצורך הזרקת תלות כאשר נעשה שימוש בהגדרת ההזרקה המבוססת על הערות ובסריקת Classpath.
  5. קיץ @RestController ההערה RestController של Spring היא הערת נוחות הנסמנת עם @Controller ו-@ResponseBody. ההערה הזו מיועדת למסמן מחלקה כמטפלת בבקשות.
  6. קיץ @Controller ההערה Controller של Spring היא התמחות של ההערה @Component. ההערה Controller של Spring נהוגה לשימוש בשילוב עם שיטות הטיפול המסומנות בהערת RequestMapping.
  7. קיץ @Repository ההערה @Repository של Spring משמשת לציון שהמחלקה מספקת את המכן לפעולות אחסון, גישה, חיפוש, עדכון ומחיקה של אובייקטים.
  8. תצורת Spring האינטרפייס @Configuration ב-Spring הוא חלק ממסגרת הליבה של Spring. אנטוטציית התצורה של Spring מציינת כי לכיתה יש שיטות הגדרת @Bean. לכן, מנהל התוכן של Spring יכול לעבד את הכיתה וליצור Spring Beans שישמשו ביישום.
  9. ערך Spring האינטוטציה @Value ב-Spring משמשת להקצאת ערכי ברירת מחדל למשתנים ולארגומנטים של שיטות. אנו יכולים לקרוא משתנים של סביבת Spring כמו גם משתנים של המערכת באמצעות האינטוטציה @Value.
  10. מקור התכונות של Spring אנטוטציית המקור @PropertySource של Spring משמשת לספק קובץ מאפיינים לסביבת Spring. האנטוטציה הזו משמשת עם כיתות @Configuration.
  11. Spring @PostConstruct וְ @PreDestroy כאשר אנו מעטיפים שיטה במחלקת Spring Bean עם האנוטציה @PostConstruct, היא מתבצעת לאחר שה-Bean של Spring אינו מאותחל. כאשר אנו מעטיפים שיטה במחלקת Spring Bean עם האנוטציה PreDestroy, היא מתקראת כאשר מופע ה-Bean נמחק מההקשר.
  12. Spring @Async האנוטציה Spring @Async מאפשרת לנו ליצור שיטות אסינכרוניות בספרינג. בואו נגלה @Async במדריך זה על מתווה הספרינג.

מדריכי Spring Boot

  1. מדריך Spring Boot
  2. רכיבי Spring Boot
  3. Spring Boot @SpringBootApplication, SpringApplication Class Spring Boot @SpringBootApplication האונוטציה משמשת לסימון של מחלקת תצורה המכילה פעולות @Bean אחת או יותר וכן מפעילה אוטומטית הגדרת תצורה וסריקת רכיבים. מחלקת SpringApplication של Spring Boot משמשת להפעלת והתחלת אפליקציה של Spring מתוך פעולת main ב-Java.
  4. Spring Boot REST המדר הזה מסביר איך ליצור שירותי RESTful עם מודול Spring Boot.
  5. Spring Boot MongoDB למד איך להשתמש ב-MongoDB באפליקציה של Spring Boot.
  6. Spring Boot Redis Cache המאמר הזה מסביר איך לאינטגרט זיכרון מטמון של Redis באפליקציה של Spring Boot.
  7. Spring Boot Elasticsearch המאמר הזה מסביר איך לאינטגרט את Elasticsearch באפליקציה של Spring Boot.
  8. נקודות קצה של Spring Boot Actuator Spring Boot Actuator Endpoints מאפשרות לנו למזער ולהתקשר עם היישום שלנו. Spring Actuator הוא תת-מודול של Spring Boot ומספק נקודות קצה מובנות שאנו יכולים להפעיל ולהשבית עבור היישום שלנו.
  9. ממשק הווב Spring Boot Initializr
  10. דוגמה לשימוש ב- Spring Boot CLI
  11. Spring Boot – לא ניתן לקבוע מחלקת מנהל מסד נתונים מוטבעת עבור סוג מסד נתונים NONE
  12. שאלות ראיון על Spring Boot

מדריך ל-Spring MVC

  1. מדריך למתחילים על Spring MVC עם Spring Tool Suite מודולי Spring MVC עוזרים לנו ליצור אפליקציות אינטרנט בעזרת ג'אווה. זהו הפוסט הראשון בסדרת ה-MVC של Spring, ותלמד כיצד להשתמש ב-Spring Tool Suite (STS) וליצור אפליקציה פשוטה בעזרת מסגרת Spring MVC.
  2. דוגמה ל- Spring MVC המדר הזה מסביר איך ליצור אפליקציית Spring MVC באמצעות Maven ו- Eclipse IDE, בלעדיים של Spring Tool Suite.
  3. דוגמה לשירות רשת Spring רסטפול עם JSON הספרייה של Spring מספקת תמיכה מובנית ל- API של Jackson JSON ואנו יכולים להשתמש בה כדי ליצור שירות רשת רסטפול המחזיר תגובה בפורמט JSON. המדר מסביר את כל חלקי האפליקציה השונים הדרושים להגדיר את האפליקציה כך שתחזיר תגובה בפורמט JSON ותממש Interfacing של Rest API.
  4. Spring REST בפורמטי XML ו-JSON Spring REST תומך בשני פורמטים להעברת הודעות בין שאילתות ותגובות: XML ו-JSON. המדר מסביר איך בקלות ניתן לתמוך בשני הפורמטים באמצעות הגדרות פשוטות.
  5. Spring RestTemplate Spring RestTemplate מספק דרך נוחה לבדיקת שירותי רשת רסטפול. ניתן להשתמש ב-RestTemplate כדי לבדוק שירותי רשת רסטפול המשתמשים ב-HTTP, אך אין לו תמיכה בפרוטוקול HTTPS.
  6. דוגמת העלאת קובץ Spring MVC העלאת קבצים היא אחת מהמשימות הנפוצות ביישומי אינטרנט, ולכן Spring מספקת תמיכה מובנית בהעלאת קבצים על ידי שילוב עם API של Apache Commons FileUpload. המדריך הזה מיועד לתת הבנה על כיצד מוגדרים רכיבים שונים עם דוגמה להעלאת קבצים יחידים ומרובים.
  7. דוגמת התאמה בינלאומית ולוקליזציה ב־Spring MVC כל אפליקציה אינטרנטית עם משתמשים מכל רחבי העולם, התאמה בינלאומית (i18n) או לוקליזציה (L10n) היא חשובה מאוד לאינטראקציה טובה יותר עם המשתמש. רוב מסגרות האפליקציות האינטרנטיות מספקות דרכים פשוטות להתאם את האפליקציה לפי התצורה הארצית של המשתמש. Spring גם מתאימה את עצמה לתהליך ומספקת תמיכה נרחבת לבינלאומיזציה (i18n) דרך שימוש ב-interceptors של Spring, מפרשי Locale ו־Resource Bundles לשפות שונות. המדריך הזה מסביר את תהליך ה-i18n וה-L10n ביישומי אינטרנט של Spring דרך פרוייקט דוגמתי.
  8. כאשר אנו מקבלים קלט משתמש באפליקציה רשת כלשהי, חשוב לאמת אותו. אנו יכולים לאמת את קלט המשתמש בצד הלקוח באמצעות JavaScript, אך זה חייב להתבצע גם בצד השרת כדי לוודא שאנו מעבדים נתונים תקפים במקרה שהמשתמש מניח JavaScript. הגרסה של Spring MVC Framework תומכת בתקן JSR-303 כברירת מחדל וכל מה שאנו צריכים הוא להוסיף JSR-303 ואת התלות ביישום שלו באפליקציית Spring MVC. Spring מספקת גם את ההערכה BindingResult ואת האות @Validator שבאמצעותה אנו יכולים לקבל את השגיאות שנוצרו על ידי מימוש האות בשיטת מטפל הבקשות בבקר הבקשות. המדריך מספק דוגמה לאימות טופס באמצעות הערות וגם מסביר את התהליך ליצירת מאמת מותאם אישית שלנו.
  9. טיפול בחריגות ב- Spring MVC כל אפליקציה רשת דורשת עיצוב טוב לטיפול בחריגות מכיוון שאנו לא רוצים לספק עמוד שנוצר על ידי התוכנה-מארז כאשר חריגה לא מטופלת זורקת על ידי האפליקציה שלנו. Spring MVC Framework מספק גישה לטיפול חזק בחריגות בכיתות הבקר, באמצעות מטפל בחריגות גלובלי ובאמצעות מימוש HandlerExceptionResolver. עיין בפרויקט הדוגמה במדריך כדי ללמוד עוד על טיפול בחריגות ב- Spring MVC.
  10. דוגמת מתקפלי Spring MVC לעיתים קרות שרוצים להתערב בבקשת HTTP ולבצע כמה פעולות לפני להעביר אותה לשיטות מטפל הבקר. לכך משמשים מתערבי Spring MVC. אנו יכולים ליצור מתערבים משלנו ב-Spring על ידי הפיכת מממשק org.springframework.web.servlet.HandlerInterceptor או על ידי דריסת מחלקה מופשטת org.springframework.web.servlet.handler.HandlerInterceptorAdapter המספקת את המימוש הבסיסי של ממשק זה. ניתן לבדוק את הפרויקט הדוגמא במדריך כדי ללמוד עוד על מתערבי Spring MVC.
  11. דוגמת Spring MVC RequestMapping @RequestMapping היא אחת מהאנוטציות הנפוצות ביותר ב-Spring MVC. האנוטציה org.springframework.web.bind.annotation.RequestMapping משמשת למפות בקשות אינטרנט על ידי קביעת מחלקות מטפלות ו/או שיטות מטפלות ספציפיות. @RequestMapping ניתן ליישום על כיתת הבקר וגם על שיטות. מדריך זה מסביר על שימושים שונים עם דוגמאות ותוכנית בדיקה.
  12. ניהול הסשן של Spring מודול Spring Session מספק APIs ויישומים לניהול הסשן של משתמש ביישום אינטרנט. Spring Session מפריד בין הלוגיקה לניהול הסשן מהיישום, עשה אותו יותר עמיד לתקלות. Spring Session מורכב מהמודולים הבאים: Spring Session Core, Spring Session JDBC, Spring Session Data Redis, ו-Spring Session Hazelcast.
  13. דוגמה ל- Spring MVC בעזרת Gradle

מדריכים של Spring Batch

  1. Spring Batch Spring Batch מאפשר לנו לעבד בקלות מספר רב של רשומות על ידי יצירת קבוצות. מאמר זה מסביר מהו Spring Batch, את ארכיטקטורתו ומתי להשתמש ביישום Spring Batch.
  2. דוגמה ל- Spring Batch מדריך זה מסביר כיצד ליצור פרויקט Spring Batch לעיבוד של קבצי CSV גדולים.

מדריך של Spring JDBC

רוב היישומים הארגוניים מתמודדים עם מסדי נתונים רלציוניים. לכן, Spring מספקת תמיכה נרחבת ב-API של JDBC וכן מספקת עטיפות לביצוע פעולות CRUD במסד נתונים.

  1. Spring JDBC ו-JdbcTemplate CRUD עם דוגמת DataSource מסגרת Spring מספקת אינטגרציה מעולה עם JDBC API ומספקת את הכיתה העזרתית JdbcTemplate, אותה אנו יכולים להשתמש כדי להימנע מקוד תבניתי בלוגיקת הפעולות שלנו עם מסד הנתונים, כגון פתיחה/סגירה של חיבור, ResultSet, PreparedStatement, וכו'. מדריך זה מספק דוגמה לפעולות CRUD באמצעות אינטגרציה של Spring JDBC.
  2. Spring DataSource JNDI עם דוגמת Tomcat אנו גם יודעים ש-DataSource עם JNDI הוא הדרך המועדפת להשיג איגום חיבורים וליהנות מיתרונות היישום של המיכל. מדריך זה מסביר כיצד אנו יכולים להשתמש ב-DataSource המוגדר במיכל tomcat כמשאב JNDI כדי לקבל חיבור למסד נתונים ולבצע פעולות שונות. זוהי הדרך המועדפת לקבלת חיבורים למסד נתונים ביישום אינטרנטי של Spring מכיוון שהמיכל דואג לניהול משאבי המסד נתונים.
  3. דוגמה לניהול עסקאות באמצעות Spring עם JDBC ניהול עסקאות הוא משימה טריביאלית בכל יישום עסקי. Spring מספק תמיכה נרחבת לניהול עסקאות ועוזר למפתחים להתמקד יותר בלוגיקת העסק ופחות בדאטה. ניהול עסקאות דיסקרטי של Spring הוא הגישה המועדפת לניהול עסקאות מכיוון שהיא קלה מאוד לשימוש ואין תלות ישירה, היא משתמשת ב- AOP ובהזנה של תלות.
  4. Spring JdbcTemplate מחלקת JdbcTemplate של Spring היא ליבת מודול JDBC של Spring. היא מספקת שיטות שונות לביצוע שאילתות SQL, קריאת נתוני סט תוצאות, וכדומה.

מדריך Spring Hibernate

Spring הוא אחד מהגיפים הנפוצים ביותר בפריימוורק Java EE ו-Hibernate הוא הפריימוורק ORM הטוב ביותר בשוק. לכן, Spring מספקת תמיכה מובנית עבור Hibernate במודול Spring ORM.

  1. דוגמה לאינטגרציה של Spring עם Hibernate המדריך הזה מספק פרטים מלאים עם דוגמה לאינטגרציה של Hibernate עם יישום עצמאי של Spring. הדוגמה מראה את האינטגרציה בין Spring 4 + Hibernate 4 כמו גם Spring 4 + Hibernate 3.
  2. דוגמה לשימוש ב-Spring MVC Hibernate CRUD Spring MVC יכול להיות משולב בקלות עם הגדרות ה-Hibernate. בנוסף, ניתן להשתמש בניהול עסקאות מצהירות של Spring, שמשחרר את היישום שלנו מקוד כולל.
  3. דוגמה ל-Spring ORM
  4. Spring ORM עם ניהול עסקאות AOP

הדרכה ב-Spring Security

בקרת אבטחה של Spring יכולה להיות מיושם בכל יישום אינטרנטי ב-Java, היא עובדת כחלק נפרד של היישום ומספקת דרכים שונות לאימות ולהרשאה.

  1. בקרת אבטחה של Spring ביישום רשת סרוולט ההדרכה הזו מסבירה את היסודות של מודול האבטחה של Spring. היא גם מספקת דוגמה לאימות בזיכרון, DAO ובמערכת השילוב עם JDBC עם פרויקט דוגמאי.
  2. דוגמת אבטחת Spring MVC אם אנו משתמשים במסגרת Spring MVC, החיבור של אבטחת Spring פשוט מאוד מכיוון שכבר יש לנו הגדרות המבוססות על Spring. כל מה שנדרש הוא להחביר את ההגדרות הקשורות לאבטחה.
  3. אבטחת Spring 4 מאמר זה מסביר על המודול לאבטחה שהוצג ב-Spring 4.
  4. אבטחת Spring MVC מאמר זה מסביר כיצד להשתמש באבטחת Spring באפליקציית Spring MVC.
  5. אישור גישה מבוסס תפקידים ב-Spring Security

הדרכות אינטגרציה של Spring

  1. דוגמת הדרכה לאינטגרציה של Spring עם JSF JSF היא מסגרת מבוססת רכיבים עם דגש רב על ממשקי משתמש בעוד שעיקרו של Spring הוא התנגדות להטמעה. מדריך זה מסביר איך להשיג את המיטב מהם על ידי אינטגרציה של JSF עם מסגרת Spring.
  2. דוגמה לאינטגרציה של Primefaces עם המסגרת Spring & Hibernate זוהי אחת מדוגמאות האינטגרציה בה נסביר כיצד לשלב את PrimeFaces עם מסגרת Spring ו-Hibernate. זוהי תפריטורה בשימוש נרחב כדי להשיג את המרב מכל אחת מהמסגרות.
  3. דוגמה לאינטגרציה של PrimeFaces עם Hibernate ו-SpringRoo SpringRoo הוא כלי תוכנה פתוח המשתמש בקונספט הכללי-מעל-תצורה כדי לקל facilit ליצירת יישומי תוכנה עסקיים באמצעות שורת פקודות מובנית. המדר הזה מסביר על אינטגרציה בין SpringRoo, PrimeFaces ו-Hibernate.

Spring Messaging

  1. Spring AMQP
  2. Spring RabbitMQ
  3. דוגמה ל-RabbitMQ ב-Spring
  4. Spring ActiveMQ חלק 1
  5. Spring ActiveMQ חלק 2

שאלות ראיון בנוגע לספרינג

אם אתה הולך לראיון עבור Java EE וספרינג הוא דרישה, אני מקווה שהפוסט הזה יעזור לך לרענן את הידע שלך בזמן קצר. זהו כל הדברים עבור שיעורי ספרינג לעכשיו. ל-Spring Framework יש המון מודולים ואני אפרסם עליהם בעתיד ואמשיך לכלול אותם כאן. אני ממליץ לך לסמן את הפוסט הזה להפניות עתידיות.

Source:
https://www.digitalocean.com/community/tutorials/spring-tutorial-spring-core-tutorial