tomcat 7.0.xxx
下載與設定tomcat
0.下載
下載 tomcat 7.0.xx (tomcat之所以會同時存在很多版本,是因為每個公司的環境不一定都更新到最新的java環境)
download: https://tomcat.apache.org/download-70.cgi (通常選第一個下載連結就對了)
官方是建議安裝到 CATALINA_HOME: /usr/local/tomcat
Set CATALINA_HOME (required)
如果覺得不想這麼多步驟的話,直接用eclipse即可!!
BUT我打算依課程下載到不同對應的資料夾,如: /Users/aa/Documents/JAVA_EE/apache-tomcat-7.0.81.zip
1.初始設定
解壓縮後,開啟說明書<<RUNNING.txt>>

簡單來說running.txt的說明步驟是這樣的
step1. 安裝java
step2. 安裝tomcat
step3. 設定環境變數
Set CATALINA_HOME (required) and CATALINA_BASE (optional)
Set JRE_HOME or JAVA_HOME (required)
step4. Start Up Tomcat (以mac為例,win7自己看說明書)
$CATALINA_HOME/bin/startup.sh
step5. Shut Down Tomcat
$CATALINA_HOME/bin/shutdown.sh
step6. 官網的安裝說明 http://tomcat.apache.org/tomcat-7.0-doc/setup.html
如果想要建 CATALINA_HOME http://www.cnblogs.com/lenovoengineer/p/3959486.html
如果真的很懶得動的話,直接使用eclipse
2.啟動tomcat
這邊沒有要建立CATALINA_HOME,因為電腦同時要裝很多版本的tomcat,所以手動以下的方法
開啟
step1.
$ cd tomcat完整路徑/bin
ex. $ cd /usr/local/tomcat8/bin
ex. $ cd /Users/aa/Documents/JAVA_EE/apache-tomcat-7.0.81/bin
step2. 開啟
$ ./startup.sh
如果被denied,再加入下列兩行,即可$ ./startup.sh:
chmod -R 777 startup.sh
chmod -R 777 catalina.sh
關閉
step1.
$ cd tomcat完整路徑/bin
ex. $ cd /usr/local/tomcat8/bin
step2. 關閉
$ ./shutdown.sh
3.異常排除
如果埠號8009有衝突,先檢查是誰用掉埠號,如想檢查8009
$ lsof -i | grep 8009
方法一:關掉(滅口)現在被佔用的埠號的程式
$ kill -9 埠號
如$ kill -9 8009
方法二:去server.xml改掉tomcat的port
4.連結tomcat後台
如果要登入後台 http://localhost:8080/,一定要做設定
四大xml設定檔:位置tomcat資料夾/conf/
| XML | 主要功能 | 管理 |
|---|---|---|
| context.xml | 連接資料庫 | 甲方、乙方 |
| server.xml | 設定port | 甲方、乙方 |
| tomcat-users.xml | 設定使用者 | 甲方 |
| web.xml | 過濾、監聽、servlet mapping網址、session timeout、error page | 乙方 |
context.xml:
- 自動reloading
<Context antiResourceLocking="false" privileged="true" reloadable="true" crossContext="true">
- tomcat JDBC連接 mysql, oracle
<Context>
<Resource name="jdbc/TestDB"
auth="Container"
type="javax.sql.DataSource"
driverClassName="com.mysql.jdbc.Driver"
url="jdbc:mysql://localhost:3306/DB_NAME_xxxxxx"
username="xxxxx"
password="xxxxx"
maxActive="20" maxIdle="10"maxWait="-1"/>
<Resource name="jdbc/TestDB"
auth="Container"
type="javax.sql.DataSource"
driverClassName="oracle.jdbc.driver.OracleDriver"
url="jdbc:oracle:thin:@localhost:1521/DB_NAME_xxxxxx"
username="xxxxx"
password="xxxxx"/>
</Context>
server.xml:
- Search "Connector port", Replace "8080" by
your port number
tomcat-users.xml:
<role rolename="tomcat"/>
<role rolename="role1"/>
<role rolename="manager-gui"/>
<user username="tomcat" password="tomcat" roles="tomcat"/>
<user username="both" password="tomcat" roles="tomcat,role1"/>
<user username="role1" password="tomcat" roles="role1"/>
<user username="manager-gui" password="manager-gui" roles="manager-gui"/>
web.xml:
- 開發階段福利:啟動目錄列舉功能
<servlet>
<init-param>
<param-name>listings</param-name>
<param-value>true</param-value>
</init-param>
</servlet>

