tomcat下的一個類被載入兩次
tomcat部署的專案,有個類執行了兩次,剛好是定時任務,這是非常嚴重的!
解決辦法:
在部署專案的時候配置檔案server.xml的host內容配置如下:
tomcat 對一個 web 應用會有一個類載入器,在Host的appBase=“webapps“裡面配置了專案的路徑,同時在Context的docBase="test"配置了專案的路徑,所以導致類被載入兩次。
解決方法:清空 <Context> 即可。
appBase和docBase的區別:
appBase:
1)這個目錄下面的子目錄將會自動被部署為應用;
2)這個目錄下的.war將會被自動加壓部署為應用。
區別:
1)想自己指定路徑就把appBase置空(appBase=""),docBase="專案路徑";
2)如果不想指定路徑,把專案複製到webapps目錄之下,不用配置context。
相關推薦
tomcat下的一個類被載入兩次
tomcat部署的專案,有個類執行了兩次,剛好是定時任務,這是非常嚴重的! 解決辦法: 在部署專案的時候配置檔案server.xml的host內容配置如下: tomcat 對一個 web 應用會有一個類載入器,在Host的appBase=“webapps“裡面配置了專案的路
springboot裝配devtools後,類被載入兩次的問題
場景: 專案採用springboot+devtools熱載入開發,在專案的某個角落有一個工具類,採用靜態內部類做InstanceHolder,如下:public final class ConnectionTool { private ConnectionToo
關於Tomcat下項目被啟動兩次為問題
span 自己 節點配置 為什麽 ase load min 目的 程序 最近遇見了一個很搞得事情,在tomcat下啟動項目時自己寫的定時程序被執行了兩次,導致程序啟動了兩個線程,使定時任務在幾秒間隔內執行了兩次,後來通過日誌查到,原來是tomcat將項目啟動了兩次,為什麽呢
當一個類被載入後,它的靜態變數生命週期是什麼,是整個應用程式執行結束(比如java web程式,從類載入到伺服器關閉還是該執行緒執行完畢)還是別的什麼?
靜態變數在記憶體中只有一個,JAVA虛擬機器載入類的時候為其分配記憶體,位於方法區,被類的所有例項共享,其生命週期取決於類的生命週期。。。當類被解除安裝。。。靜態變數也被銷燬 取決於類載入器。如果換了一個類載入器,這個
當一個類被載入時成員的初始化順序
當一個類因為例項化被載入時,其成員的初始化順序是什麼呢? 先看下面這段程式碼: class Fsx{ public Fsx(){ System.out.println("Fsx無參構造器初始化了"); } public Fsx(
spring-servlet.xml 和 application.xml 配置含義及bean被載入兩次的問題
最近在遷移一個專案,原本是RPC服務與API水平拆分的,現在需要垂直拆分,每個RPC服務自己提供http介面,我負責遷移RPC部分,另一個同事負責遷移API部分,涉及到一些配置遷移的時候出現了些小狀
JVM中 一個類只會被載入一次
載入是相對於程序而言的, 啟動一個main方法,也就是啟動了一個程序,在一個程序中,一個類只會被載入一次public class TestThread { /**
JVM中 一個類只會被載入一次
載入是相對於程序而言的, 啟動一個main方法,也就是啟動了一個程序,在一個程序中,一個類只會被載入一次 public class TestThread { /** * 啟
為什麽用new 創建的對象不能夠被delete兩次,即使這個對象所屬的類並不含指針?
vra 記載 www. blank asm mgo dbi lbs t420 h迷C剿刪斷28幼g匚28收http://jz.docin.com/nwo027 吩D913憑瞥5褂ND職昧耙http://www.docin.com/app/user/userinfo?use
Tomcat 啟動兩次的問題(ServletContextListener的contextInitialized被執行兩次的問題)
問題: 在啟動 tomcat5 時,控制檯視窗會打印出兩行“hello word”字串? 問題原因: 因為hello應用本來就放在Tomat的預設webapp目錄下(tomcat在啟動時肯定會載入1次),然後又在server.xml中做了配置,為了達到訪問根就可以訪問hello應用
static{}(即static塊),會在類被載入的時候執行且僅會被執行一次,一般用來初始化靜態變數和呼叫靜態方法
這裡是一個工具類,因為連線配置資訊只需要執行一次就行所以採用static塊 static塊會最先執行 package com.my.jedis; import java.io.IOException; import java.io.InputStream; import
Tomcat啟動載入兩次專案
Tomcat載入專案時執行兩次,這是為什麼呢?分析一下Tomcat下的server.xml配置檔案 <Host appBase="webapps" autoDeploy="true" name="localhost" unpackWARs="true">
一個對象構造兩次,析構兩次
iostream img cbo mes ace cout style class 對象 1 #include<iostream> 2 int n=0; 3 using namespace std; 4 class Cbox{ 5
8個球7個一樣重的,有一個偏重,一個天平,如何兩次找出偏重的小球
div 說明 2個 body 就是 bsp 如果 有一個 第一次 第一次稱的時候,天平兩邊各放3個球,剩余2個球。 如果天平平衡,說明較輕的球在剩余的兩個球中,第二次稱的時候只需稱剩余的這2個球即可。 如果天平不平衡,從第一次稱時相對較輕的那3個球中選2個做第二次稱重。第二
C++中實現防止一個類被其他類繼承
如何在防止一個類被其他的類繼承呢? 如果是僅僅為了達到這個目的可以直接把這個類的建構函式設定成私有的,這樣就杜絕了其他類的繼承。也相當於毀掉了這個類(無法再創造出自己的物件)。 那麼怎麼樣既要保證這個類的完整性,又防止其他類的繼承呢? 這就要藉助友元來實現,因為友元是不
Spring的定時任務@Scheduled,部署後執行載入兩次
最近公司讓做定時抓取新聞的一個定時,一切都部署好後,發現每次都載入了兩次。配置檔案都檢查了,也沒發現問題。 1.註解的配置 <!-- 啟用註解定時 --> <task:annotation-driven scheduler="mySchedul
tomcat下一個專案如何繫結多個域名
<Host name="localhost" debug="0" appBase="D:\\Tomcat 5.0\\webapps" unpackWARs="true" autoDeploy="true" xmlValidation="fa
thinkphp中方法被執行兩次
最近兩天程式碼中出現了一個問題,就是我的控制器的方法中執行了向資料庫插入,每次點開該頁面,add()方法就會被執行兩次,就是因為這個add方法讓我發現此方法被執行了兩次,因為每次點開該頁面,資料庫就會增加兩條記錄。
Java的靜態程式碼塊是否會在類被載入時自動執行?
JAVA靜態程式碼塊會在類被載入時自動執行? 一、先看Java靜態方法,靜態變數 靜態程式碼塊 在類中,可以將某一塊程式碼宣告為靜態的,這樣的程式塊叫靜態初始化段。靜態程式碼塊的一般形式如下: static { 語句序列 } public class staticBlock{
IOS viewDidLoad方法被執行兩次(viewDidLoad和loadView方法詳解)
為了搞清楚viewDidLoad、loadView等方法的用途和呼叫順序,寫了一個小demo,不料viewDidLoad方法被執行了兩次,模擬器也一直是黑屏。查看了這兩個方法的官方解釋後找到了錯誤原因和解決方法。 首先來看UIViewController.h檔