Tôi có bố cục thư mục sau:
- src
- chủ yếu
- java
- tài nguyên
- sql (tập lệnh cho cơ sở dữ liệu)
- mùa xuân (cấu hình)
- ứng dụng web
Trong một lớp ServletContextListener, tôi muốn truy cập các tệp trong thư mục SQL và liệt kê chúng. Về cơ bản, vấn đề của tôi là với đường dẫn, bởi vì tôi biết rằng tóm tắt việc liệt kê các tệp trong một thư mục là:
File folder = new File(path);
File[] listOfFiles = folder.listFiles();
Có lẽ tôi có thể sử dụng ServletContextEvent
Đối tượng để thử và xây dựng một đường dẫn đếnresources/sql
public void contextInitialized(ServletContextEvent event) {
event.getServletContext(); //(getRealPath etc.)
}
Có điều gì đó tồn tại để đặt đường dẫn đó theo cách tương đối, không được mã hóa cứng không? Một cái gì đó như new File("classpath:sql")
(tốt nhất là mùa xuân nếu có thể) hoặc tôi nên làm gì với servletContext để trỏ vào resources/sql
?