הראה הצהרות SQL של ​​מצב שינה / JPA מ- Boot Boot

1. סקירה כללית

האביב JDBC ו- JPA מספקים הפשטות על פני ממשקי API של JDBC מקוריים המאפשרים למפתחים לבטל שאילתות SQL מקוריות. עם זאת, לעיתים קרובות עלינו לראות את שאילתות SQL שנוצרו אוטומטית ואת סדר ביצוען לצורך איתור באגים.

במדריך מהיר זה, נבחן דרכים שונות לרישום שאילתות SQL אלה ב- Spring Boot.

2. רישום שאילתות JPA

2.1. לתפוקה רגילה

הדרך הפשוטה ביותר היא לזרוק את השאילתות לסטנדרט החוצה היא להוסיף את הדברים הבאים ל application.properties:

spring.jpa.show-sql = נכון

כדי לייפות או להדפיס את ה- SQL, נוכל להוסיף:

spring.jpa.properties.hibernate.format_sql = נכון

אמנם זה פשוט ביותר, זה לא מומלץ מכיוון שהוא פורק ישירות הכל לפלט רגיל ללא כל אופטימיזציה של מסגרת רישום.

יתר על כך, זה לא מתעד את הפרמטרים של הצהרות מוכנות.

2.2. דרך לוגררים

כעת, בואו נראה כיצד אנו יכולים לרשום את משפטי SQL על ידי הגדרת רישומי עצים בקובץ המאפיינים:

logging.level.org.hibernate.SQL = DEBUG logging.level.org.hibernate.type.descriptor.sql.BasicBinder = TRACE

השורה הראשונה רושמת את שאילתות ה- SQL, והמשפט השני רושם את פרמטרי המשפט המוכנים.

מאפיין ההדפסה היפה יעבוד גם בתצורה זו.

על ידי הגדרת מאפיינים אלה, יומני הרישום יישלחו למוגדר המוגדר. כברירת מחדל, Spring Boot משתמש לוגבק עם appender out רגיל.

3. כניסה JdbcTemplate שאילתות

להגדרת רישום הצהרות בעת השימוש JdbcTemplate, אנו זקוקים למאפיינים הבאים:

logging.level.org.springframework.jdbc.core.JdbcTemplate = DEBUG logging.level.org.springframework.jdbc.core.StatementCreatorUtils = TRACE

בדומה לתצורת רישום JPA, השורה הראשונה מיועדת לרישום משפטים והשנייה היא רישום פרמטרים של הצהרות מוכנות.

4. איך זה עובד?

שיעורי האביב / שינה שיוצרים הצהרות SQL וקובעים את הפרמטרים, כבר מכילים את הקוד לרישום אותם.

עם זאת, רמת הצהרות יומן אלה מוגדרת לנפות ו זֵכֶר בהתאמה, שהיא נמוכה מרמת ברירת המחדל באביב אתחול - מידע.

על ידי הוספת מאפיינים אלה, אנו רק מגדירים את אותם כורתים לרמה הנדרשת.

5. מסקנה

במאמר קצר זה, בחנו את הדרכים לרישום שאילתות SQL ב- Spring Boot.

אם אנו בוחרים לקבוע תצורה של מספר תוספים, נוכל גם להפריד בין הצהרות SQL והצהרות יומן אחרות לקבצי יומן שונים כדי לשמור על הניקיון.


$config[zx-auto] not found$config[zx-overlay] not found