ฉันกำลังทำงานกับโปรเจ็กต์ Spring boot ของฉันและสังเกตเห็นว่าบางครั้งมีข้อผิดพลาดการหมดเวลาการเชื่อมต่อไปยังฐานข้อมูลของฉันบนเซิร์ฟเวอร์อื่น (SQL Server) สิ่งนี้เกิดขึ้นเป็นพิเศษเมื่อฉันพยายามย้ายสคริปต์บางอย่างด้วยFlyWayแต่มันใช้งานได้หลังจากพยายามหลายครั้ง
จากนั้นฉันสังเกตว่าฉันไม่ได้ระบุ spring.jpa.hibernate.ddl-autoในไฟล์คุณสมบัติของฉัน ฉันได้ทำการวิจัยและพบว่ามีการแนะนำให้เพิ่ม
spring.jpa.hibernate.ddl-auto= create-dropการพัฒนา และเปลี่ยนเป็น: spring.jpa.hibernate.ddl-auto= noneในการผลิต
แต่ฉันไม่เข้าใจจริงๆว่ามันทำงานอย่างไรและไฮเบอร์เนตสร้างสคีมาฐานข้อมูลโดยใช้create-dropหรือnoneค่าได้อย่างไร คุณช่วยอธิบายในทางเทคนิคได้ไหมว่ามันทำงานอย่างไรและคำแนะนำสำหรับการใช้คุณสมบัตินี้ในการพัฒนาและบนเซิร์ฟเวอร์ที่ใช้งานจริงคืออะไร ขอบคุณ
noneแต่คุณอาจต้องการให้ Hibernate Search และ Envers ตารางของคุณถูกสร้างขึ้นโดยใช้updateเนื่องจากมีการจัดการภายในโดยโครงการเหล่านั้นและคุณไม่ต้องการจัดการด้วยตนเองด้วยตนเอง ตอนนี้เราควบคุมสิ่งนี้ทั่วโลกสำหรับตารางทั้งหมดโดยไม่คำนึงถึงที่มา / แหล่งที่มา นี่จะเป็นเหตุผลในการใช้ตัวเลือกเฉพาะผู้ขายเพิ่มเติมหากคุณต้องการใช้สิ่งนี้