30/09/2018, 20:56
Cho mình hỏi về cách để tự động gọi 1 method từ backend
bình thường để gọi 1 method ở backend thì phải có 1 event nào đó diễn ra trên trang thì nó mới gọi về backend , nhưng bây giờ mình muốn chỉ cần chạy vào trang đó thì nó sẽ gọi 1 method ở backend thì phải làm thế nào … mình đang làm web với jsf framwork
Bài liên quan
mình chỉ mới học java nên chưa biết những cái đó, mới chỉ học servlet. nhưng mình có 1 góp ý này có thể giúp ích được cho bạn vì mình nghĩ cơ bản là cơ chế hoạt động của web giống nhau. khi bạn chạy vào trang đó thì chắc chắn sẽ có http get gửi tới webserver như mình học servlet thì khi có http get gửi đến thì mặc định doget() trong servlet sẽ dc thi hành. bạn thử xem trong cái farmwork của bạn có gì tương tự không :V
nhưng đó là khi bạn kích hoạt 1 action nào đó nó mới gửi về serlet chứ , ví dụ như bên jsp thì bấm vào 1 button trong form thì nó sẽ gọi về 1 method bên serlet… nhưng nếu chỉ load trang thôi thì sao nó biết được mình muốn gọi đến method nào…
Lúc mới load trang (index chẳng hạn) thì nó gọi method nào?
ví dụ : 1 web bán hàng , lúc mới truy cập vào trang index nó sẽ hiện ra tất cả sản phẩm , nhưng có 1 cái mình thấy sai sai đó là mỗi khi load trang đó thì nó luôn chạy method đó thì lại ko đúng cho lắm vì cũng trên 1 trang đó người ta có thể tìm sản phẩm khác
lần đầu tiên chạy index >>> hiển thị ra tất cả sản phẩm
khi đã load lên trang index ta có thể tìm kiếm sản phẩm >>>thì ở đây có 2 trường hợp >>>>
TH1 . sẽ trả về kết quả ngay trên trang index và sẽ hiện list mặt hàng ngay trên trang này nhưng nếu làm thế này thì nó sẽ tự động gọi tới hàm hiện tất cả sp vì mặc định chạy trang này thì sẽ chạy method đó
TH2: sẽ viết 1 trang riêng cấu trúc thì giống như trang index nhưng sẽ chứa kết quả mà ta tìm kiếm
bạn thử xem lại phần cơ bản về java web coi, mình nhớ k sai đâu. ví dụ khi bạn truy cập vào homepage, thì ngay khi đó là http get đã được gửi đến webserver và phương thứ doGet() ở servlet tương ứng sẽ thi hành ngay lập tức
nó gọi doGet() bạn ạ
mình đã bảo là mình ko dùng servlet mình dùng managebean để xử lý nên không có 2 pt doget() , dopost() , nếu viết = jsp servlet thì mình đã xử lý đc rồi…