ฉันมีเค้าโครงไดเร็กทอรีต่อไปนี้:
- src
- หลัก
- java
- ทรัพยากร
- sql (สคริปต์สำหรับฐานข้อมูล)
- สปริง (การกำหนดค่า)
- webapp
ภายในคลาส ServletContextListener ฉันต้องการเข้าถึงไฟล์ภายใต้ไดเร็กทอรี SQL และแสดงรายการ โดยทั่วไปปัญหาของฉันอยู่ที่เส้นทางเพราะฉันรู้ว่าการแสดงรายการไฟล์ภายใต้ไดเรกทอรีโดยสรุปคือ:
File folder = new File(path);
File[] listOfFiles = folder.listFiles();
บางทีฉันอาจใช้ServletContextEvent
Object เพื่อลองสร้างเส้นทางไปresources/sql
public void contextInitialized(ServletContextEvent event) {
event.getServletContext(); //(getRealPath etc.)
}
มีบางอย่างเพื่อกำหนดเส้นทางนั้นในรูปแบบสัมพัทธ์และไม่ใช่ฮาร์ดโค้ด บางอย่างเช่นnew File("classpath:sql")
(ควรสปริงถ้าเป็นไปได้) หรือฉันควรทำอย่างไรกับ servletContext เพื่อชี้ไปที่resources/sql
?