簡體   English   中英

我可以在運行時創建 servlets 嗎?

[英]Can I create servlets at runtime?

我有一個網站,里面有幾個 servlets。 每個頁面,如索引、關於、FAQ、聯系我們等等,都有一個連接到它們的 servlet。 我還計划通過按鈕create new page添加其他頁面,這樣當有人單擊它時,將為該頁面分配一個新的 servlet。

是否可以在運行時創建 servlets? 我的猜測是這是不可能的(或者至少非常困難)。

...如果沒有,是否有任何解決方法?

如果這很重要,我正在使用 GlassFish。

不,您不能創建新的 servlets,但您的建議是一個常見的要求。 當用戶創建一個新頁面時,您需要將其保存在某個地方,例如數據庫或文件系統。 我會建議數據庫。

然后對您的 servlet 進行編碼,以根據數據庫的內容動態呈現其頁面菜單和每個單獨的頁面內容。

在此示例中,您的 servlet 可以扮演前端 Controller的角色,以處理確定已請求哪個視圖並調度它的呈現的決策點(您可能需要一個單獨的調度程序)。 您的 JSP 在本質上可能非常通用,即保存菜單和頁面內容,它根據 Servlet 在適當的 scope(例如請求)中設置的數據呈現這些內容。

JSP 用於動態內容。 使用它們

您正在實現哪些特定功能需要您為每頁創建一個新的 servlet? 您是如何考慮這樣做的(動態生成 Java 代碼並即時編譯?字節碼生成?)? 或者您正在考慮將新的 URL 映射到現有的 servlet? 無論哪種方式,這對我來說都沒有多大意義。

這聽起來像你需要它一個CMS? 這里有一些關於基於 Java 的 CMS 的很好的討論

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM