2011-12-25 35 views
6

Tôi có ứng dụng máy chủ ứng dụng khách. Các máy chủ được làm bằng các dịch vụ yên tĩnh với áo và được triển khai trên tomcat 7. Trên thực tế, tôi cần phải tạo ra bối cảnh của các dịch vụ (đọc một số tập tin có kích thước cao) trước khi khách hàng truy cập vào các dịch vụ. Có thể tạo một lớp chính của webapp của tôi hay không?lớp chính của ứng dụng web tomcat

Trả lời

8

Ứng dụng web trong JavaEE không có "lớp chính" theo nghĩa tương tự mà ứng dụng dành cho máy tính để bàn thực hiện; chắc chắn, việc thực thi phải bắt đầu bằng một phương thức main ở đâu đó, nhưng nó sẽ được quản lý bởi thùng chứa web (Tomcat trong trường hợp của bạn) và bên ngoài tầm với của bạn.

Những gì bạn có thể làm thay vào đó là tạo một servlet tải trước dữ liệu bạn cần trong ngữ cảnh ứng dụng bằng phương pháp init (giả sử rằng dữ liệu sẽ giống nhau cho tất cả khách hàng. được sửa đổi bởi chúng). Ngoài ra, trong cấu hình servlet, bạn xác định rằng servlet phải được nạp khi khởi động, và theo cách đó bạn đảm bảo rằng dữ liệu sẽ được nạp một lần vào đầu ứng dụng và tất cả các máy khách sẽ có thể truy cập nó từ ngữ cảnh ứng dụng.

EDIT:

Trong nhiều phiên bản gần đây của đặc tả Servlet (2.3 +) cách ưa thích là sử dụng người nghe bối cảnh, thấy điều này answer để biết chi tiết.

+1

Đúng. Người nghe là con đường để đi. – cherouvim

+0

Cảm ơn bạn rất nhiều! – TheFrenchGuy

Các vấn đề liên quan