您好,登錄后才能下訂單哦!
這篇文章主要介紹怎么讓tomcat服務增加java啟動命令,文中介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們一定要看完!
我的第一個服務端程序
最近在學習寫網絡游戲,所以要寫服務器端程序,我找了一圈,PHP,JAVA,C,最后為了與阿里云和騰訊云的兼容性好,成本低廉以及學習難度低,我選擇了java。
然后開始學習怎么寫java的class。以及怎么連接數據庫,怎么實現隔幾秒運行一次代碼。畢竟這兩個合在一起就能夠成最簡單的服務器了。
我的第一個程序很簡單,tomcat啟動后,每6秒鐘運行一次,生成一組隨機數,送給mysql數據庫就行。
關鍵點 : 自啟動 計時運行 寫數據庫
由于寫數據庫和計時運行在之前的文章已經介紹過了。
所以,本文主要來介紹怎么自啟動,
已有代碼:
1. 主函數:mainGame.java (游戲啟動的領起函數。)
2. 幀運行類: gameEnterFrame.java (負責循環執行的,我設了2秒鐘運行一次,往數據庫里寫數。)
關于自啟動,有兩個關鍵的點:
1. 需要修改一個配置文件 名字叫web.xml
在webRoot下的WEB-INF中。
如果你沒有我圖片一樣的路徑,很遺憾,那就是你的工程類型創建錯了。
記得要new一個web server project。
這個文件里面簡單的添加三行代碼,告訴tomcat,我要運行一個自啟動類,我給他起名叫做autoRun,就行了。如下圖,藍色部分是我添加的代碼。
方便大家用,粘貼出來。
<listener> <listener-class>game.autoRun</listener-class> </listener>
有了這句監聽的話,就可以在運行的時候執行game包(game包是我自己創建的游戲類包,你可以自己創建自己喜歡的包的名字)下的autoRun類了。這個autoRun類是我寫的自啟動代碼。
具體怎么寫,看下面:
2.自啟動代碼怎么寫:
我們需要讓自啟動代碼引出主函數。于是在game包下,新建一個名字為autoRun.java的文件
package game; import javax.servlet.ServletContextEvent;//這個是自啟動要用到的類,服務器后臺事件 import javax.servlet.ServletContextListener;//這個是自啟動要用到的類,服務器后臺監聽 import game.mainGame;//我們把主函數導入進來以便于運行 //聲明一個autoRun類,使用服務器后臺監聽接口。固定用法,死記硬背 public class autoRun implements ServletContextListener{ //當后臺被初始化,即發生了tomcat啟動了事件,固定用法 public void contextInitialized(ServletContextEvent arg0){ //你要做的事兒,寫在這里 System.out.println("MainFunction is running."); mainGame.main(null); } //當后臺被銷毀,即發生了tomcat關閉了事件,固定用法 public void contextDestroyed(ServletContextEvent arg0){ //執行內容寫在這里 } }
可以看到,監聽tomcat啟動關閉狀態里面有兩個部分,
一個是啟動了我要干什么
另一個是關閉了我要干什么
當然,關閉了,我眼下還不需要執行什么動作。我只是需要在啟動后執行游戲的主函數而已。所以我把主函數仍在了啟動里面。
以上是“怎么讓tomcat服務增加java啟動命令”這篇文章的所有內容,感謝各位的閱讀!希望分享的內容對大家有幫助,更多相關知識,歡迎關注億速云行業資訊頻道!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。