Tomcat
Tomcatã¨ã¯ï¼Ÿ
サーブレットコンテナã®1ã¤ã€‚
Linuxã€Windowsã€Macã«ã‚¤ãƒ³ã‚¹ãƒˆãƒ¼ãƒ«å¯èƒ½ã€‚
開発ã¨ãƒ‡ãƒãƒƒã‚°ç”¨ã«WEBã‚µãƒ¼ãƒæ©Ÿèƒ½ã‚‚ã‚り
サーブレットコンテナ
サーブレットコンテナã¨ã¯ï¼Ÿ
ï¼WEBコンテナ
ï¼ã‚µãƒ¼ãƒ–レットエンジン
Webサーãƒãƒ¼ä¸Šã§Javaプãƒã‚°ãƒ©ãƒ (JAVAサーブレットã€JSP)を動作ã•ã›ã‚‹ã‚½ãƒ•トウェア
サーブレットアプリケーションã¨é€£æºã—ã¦å‹•作ã™ã‚‹ã€‚
HTMLã‚„ç”»åƒãªã©ã®é™çš„コンテンツã¯é«˜é€ŸãªWebサーãƒ(Apacheç‰)ãŒæ‹…当
動的コンテンツã®ã¿ã‚µãƒ¼ãƒ–ãƒ¬ãƒƒãƒˆã‚³ãƒ³ãƒ†ãƒŠãŒæ‹…当ã™ã‚‹ã€‚
ã‚µãƒ¼ãƒ–ãƒ¬ãƒƒãƒˆã‚³ãƒ³ãƒ†ãƒŠã®æ©Ÿèƒ½
・ライフサイクル管ç†
サーブレットをãƒãƒ¼ãƒ‰ã—プãƒã‚»ã‚¹ã‚’メモリ内ã«å¸¸é§ã•ã›ã‚‹
クライアントã‹ã‚‰ã®HTTPリクエストã«å¿œã˜ã¦ã‚¹ãƒ¬ãƒƒãƒ‰ã‚’生æˆã—ã€éžåŒæœŸã§ã‚µãƒ¼ãƒ–レットを呼ã³å‡ºã™ã€‚
一定時間サーブレットã«å‡¦ç†è¦æ±‚ãŒç„¡ã„å ´åˆã‚„ã€ã‚³ãƒ³ãƒ†ãƒŠãŒçµ‚了ã™ã‚‹å ´åˆã«ãƒ—ãƒã‚»ã‚¹ã‚’自動終了ã•ã›ã‚‹
・セッション管ç†
クライアントã¨ã®ã‚»ãƒƒã‚·ãƒ§ãƒ³æƒ…å ±ã®ã‚„りå–りを自動ã§è¡Œã„ã€
åŒä¸€ã‚¯ãƒ©ã‚¤ã‚¢ãƒ³ãƒˆã‹å¦ã‹ï¼Ÿã®åˆ¤å®šã‚’行ã†ã€‚
インストール
æ‰‹é †
Apache Tomcat å…¬å¼ãƒ€ã‚¦ãƒ³ãƒãƒ¼ãƒ‰ã‚µã‚¤ãƒˆ
デフォルトã§ã¯ãƒãƒ¼ãƒˆï¼š8080ãŒè¨å®šã•れる。
IISã€Apacheç‰ã‚’インストール済ã¿ã®å ´åˆã¯å¤‰æ›´ã™ã‚‹å¿…è¦ã‚り
è¨å®š
ファイルリスト表示
(開発用。本番サーãƒãƒ¼ã§ã¯ä¸å¯)
~\Tomcat 9.0\conf\web.xml
<servlet>
 <servlet-name>default</servlet-name>
 <servlet-class>org.apache.catalina.servlets.DefaultServlet</servlet-class>
 略
 <init-param>
  <param-name>listings</param-name>
  <param-value>false</param-value>
  ↓
  <param-value>true</param-value>
 </init-param>
 <load-on-startup>1</load-on-startup>
</servlet>
コマンド
内容 | ファイル |
---|---|
起動 | ~\Tomcat X.X\bin\startup.bat |
åœæ¢ | ~\Tomcat X.X\bin\shutdown.bat |
実行確èª
ブラウザã‹ã‚‰localhostã€ãƒãƒ¼ãƒˆï¼š8080をリクエスト
管ç†ãƒ„ール
ディレクトリ構æˆ
tomcat~
 ├ bin :実行ファイル
 ├ conf :è¨å®šãƒ•ァイル(tomcat-users.xmlã€server.xml)
 ├ lib
 ├ logs :ãƒã‚°
 ├ temp
 ├ work
 └ webapps :公開ディレクトリ
   ├ manager :管ç†ãƒ„ール
   └ (アプリケーションルート)
     ├ (パッケージå)
     |  └ JSPファイル(~.jsp)
     └ WEB-INF
       ├ classes:プãƒã‚°ãƒ©ãƒ ä¿å˜å ´æ‰€
       |  └ (パッケージå)
       |     └ クラスファイル(~.class)
       ├ lib:ライブラリ(API)
       └ web.xml:アプリケーション用è¨å®šãƒ•ァイル(デプãƒã‚¤ãƒ¡ãƒ³ãƒˆãƒ‡ã‚£ã‚¹ã‚¯ãƒªãƒ—ã‚¿)
コンテã‚ストè¨å®šãƒ•ァイル
※(ファイルå).xml
<?xml version="1.0"?>
<Context docBase="~\(公開ディレクトリ)\(アプリケーションルート)" path="/(呼ã³å‡ºã—å)"/>
~\(公開ディレクトリ)\(アプリケーションルート) ï¼ (呼ã³å‡ºã—å)
ã¨ãªã‚‹
例 test.xml
<?xml version="1.0"?>
<Context docBase="c:/tomcat~\webapps/test" path="/myApp"/>
呼ã³å‡ºã—時
http://localhost:8080/myApp/test.jsp
コンテã‚ストè¨å®šãƒ•ァイルã®é…ç½®
tomcat~\conf\Catalina\localhost\コンテã‚ストè¨å®šãƒ•ァイル
例
tomcat~\conf\Catalina\localhost\test.xml
デプãƒã‚¤ãƒ¡ãƒ³ãƒˆãƒ‡ã‚£ã‚¹ã‚¯ãƒªãƒ—ã‚¿
アプリケーション用è¨å®šãƒ•ァイル
「JAVA デプãƒã‚¤ãƒ¡ãƒ³ãƒˆãƒ‡ã‚£ã‚¹ã‚¯ã‚¤ãƒ—ã‚¿ã€å‚ç…§
tomcat-users.xml
Tomcat内ã«ã‚ã‚‹å…¨Webアプリケーションã®è¨å®š
<?xml version='1.0' encoding='ms932'?>
<tomcat-users
 xmlns="http://tomcat.apache.org/xml"
 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
 xsi:schemaLocation="http://tomcat.apache.org/xml tomcat-users.xsd"
 version="1.0">
 
 <user username="~" password="~" roles="manager-gui" />
 Tomcat Manager Applicationã®ã‚¢ã‚«ã‚¦ãƒ³ãƒˆæƒ…å ±
 <user username="~" password="~" roles="test1-gui, test2-gui" />
 任æ„ã®ã‚¢ã‚«ã‚¦ãƒ³ãƒˆæƒ…å ±
 
</tomcat-users>
server.xml
ä»»æ„ã®ã‚¢ãƒ—リケーションã®è¨å®š
<Context …>
 …
 <Realm className="org.apache.catalina.realm.MemoryRealm" debug="1"
     pathname="/home/tomcat/~/WEB-INF/users.xml" />
 …
</Context>
context.xml
Tomcat5以é™
server.xmlã®ä»£ã‚り
server.xmlã¨context.xmlã®ä¸¡æ–¹ã«è¨å®šå€¤ã‚’入力ã—ãŸå ´åˆã€
server.xmlã®å†…容ã¯ã€context.xmlã®å†…容ã§ä¸Šæ›¸ãã•れる。
<Context path="/javaroad"
 docBase=
  "C:\Program Files\Apache Software Foundation\Tomcat 5.0\webapps\javaroad" debug="0">
  
 <Valve
  className="org.apache.catalina.valves.AccessLogValve"
  directory="logs/AccessLog" />
  
 コãƒã‚¯ã‚·ãƒ§ãƒ³ãƒ—ーリング利用時
 <Resource
  データソースå(è¨å®šå)
  name="jdbc\myDataSource"
  
  データソース利用時ã¯ä»¥ä¸‹å›ºå®š
  auth="Container"
  type="javax.sql.DataSource"
  
  JDBCãƒ‰ãƒ©ã‚¤ãƒæ¯Žã®å›ºå®šåç§°(クラスå)
  driverClassName="org.gjt.mm.jmsql.Driver"
  
ã€€ã€€æŽ¥ç¶šæƒ…å ±
  username="~"
  password="~"
  url="//localhost/~"
  
  最大接続数
  maxActive="4"
  
ã€€ã€€æŽ¥ç¶šæ™‚ã®æœ€å¤§å¾…ã¡æ™‚é–“(ミリ秒)
  maxWait="5000"
  
  待機プーリング数
  maxIdle="2"
  
  接続検証用SQL文
  validationQuery="SELECT ~"
  çŸã„時間ã§å–å¾—ã§ãã‚‹ã‚¯ã‚¨ãƒªãŒæœ›ã¾ã—ã„
 />
 
</Context>