簡體   English   中英

將Java SE應用程序即服務與Java EE應用程序最佳實踐集成

[英]Integrating Java SE application as a service with Java EE application best practices

我剛剛開始從Java SE過渡到EE,我想知道以下問題的最佳實踐。

我有一個想在網上發布的Java SE應用程序。 Web / EE部分已使用Windows7 / Apache Tomcat和標准Servlet / JSP進行了設置。 對於Java應用程序,它實際上是相互依賴的源文件的集合。

我的計划是創建一個可執行的.jar文件,該文件將由servlet調用,並將輸出流和過濾后的錯誤流移交給在線用戶。

我考慮的因素是(按優先順序排列):

  • .jar調用的開銷
  • 因此,盡管它是一種學術工具,但交通流量卻很高
  • 調用時具有安全性,結構化的用戶輸入作為命令行參數傳遞給.jar(我說的是腳本注入類型漏洞作為輸入)
  • 由於Java應用程序的模塊化可能會進行多次修訂,因此,如果應用程序和Web應用程序之間的耦合更簡單,我將在沒有上述過多開銷的情況下采用它

所以我的問題是上述計划是否是正確的方法? 還有誰能想到我應該關注的其他因素?

任何輸入或指針將不勝感激!

編輯::因此,以前我用WIn7 / Apache HTTP / PHP完成了該項目,其中PHP會通過用戶輸入生成唯一的文件名,並以exec函數調用和文件名作為命令行參數將其發送到jar程序。 該程序將生成一個類似的命名輸出文件,PHP將獲取該輸出文件的內容,並將其返回給用戶。 問題在於,每個exec調用都會實例化一個新的JVM實例,並且如果此站點擁有大量用戶,則服務器將抓取/崩潰處理許多請求。 這就是為什么我搬到本地Java服務器的原因。 我在這里也有相同的想法,只是我希望程序作為一個單元(jar),以便任何新的修訂版都更易於部署。 現在,這是一個臨時計划。 這就是為什么我的問題要求在這種情況下如何進行最佳實踐的原因。

答案很簡單:這不是正確的方法。

如果您有可用的邏輯作為Java SE代碼(例如JAR文件),則在大多數情況下,可以在Java EE Web應用程序中使用它。

因此,如果您准備好了servlet,則讓它使用JAR的功能並在JSP中提供方法調用的結果。

附帶說明:如果您開始學習Java EE,那么就不必再為JSP煩惱了-當前的默認視圖技術是Facelets(XHTML頁面),只需簽出關於該主題的Java EE 7教程即可

暫無
暫無

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

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