MySQLにアクセスするようにTomcatを構成する方法について、誰かがいくつかの詳細を提供できますか?
Tomcat内のどのディレクトリにmysql-connector-Java-5.1.13-bin
を配置しますか? Tomcat 6.0\webapps\myapp\WEB-INF\lib
の下に配置する必要がありますか?
context.xml
またはserver.xml
に構成を追加する必要がありますか?
web.xml
ファイルを作成してTomcat 6.0\webapps\myapp\WEB-INF
の下に配置する必要がありますか?もしそうなら、このファイルの内容はどのように見えるべきですか?
1:_
mysql-connector-Java-5.1.13-bin
_をTomcatディレクトリのどこに配置しますか? _Tomcat 6.0\webapps\myapp\WEB-INF\lib
_の下に配置する必要がありますか?
これは、接続を管理する場所によって異なります。通常、接続のパフォーマンスを向上させるために、接続プールされたJNDIデータソースを作成します。その場合、Tomcatは接続を管理しており、JDBCドライバーにアクセスできる必要があります。次に、JARファイルを_Tomcat/lib
_にドロップします。
ただし、基本的な方法で DriverManager#getConnection()
を使用している場合は、実際に_Tomcat/lib
_または_YourApp/WEB-INF/lib
_にドロップしてもかまいません。 。ただし、_Tomcat/lib
_内のものはallデプロイされたWebアプリケーションに適用され、_YourApp/WEB-INF/lib
_内のものはオーバーライドされることを理解する必要があります特定のwebapp専用の_Tomcat/lib
_の1つ。
2:_
context.xml
_または_server.xml
_ファイルを確認する必要がありますか?
これは、接続を管理する場所によって異なります。 JNDIデータソースを使用する場合は、次のように_YourApp/META-INF/context.xml
_を使用して設定するだけで十分です(存在しない場合はファイルを作成するだけです)。
_<?xml version="1.0" encoding="UTF-8"?>
<Context>
<Resource
name="jdbc/yourdb" type="javax.sql.DataSource"
maxActive="100" maxIdle="30" maxWait="10000"
url="jdbc:mysql://localhost:3306/yourdb"
driverClassName="com.mysql.jdbc.Driver"
username="yourname" password="yourpass"
/>
</Context>
_
および_YourApp/WEB-INF/web.xml
_は次のとおりです。
_<resource-env-ref>
<resource-env-ref-name>jdbc/yourdb</resource-env-ref-name>
<resource-env-ref-type>javax.sql.DataSource</resource-env-ref-type>
</resource-env-ref>
_
あなたがそれを基本的なDriverManager
方法でやっているなら、それはあなた次第です。ハードコードされたプロパティファイル、XMLファイルなど。自分で管理してください。 Tomcatはあなたのために役立つことは何もしません(そしてできません)。
_YourApp/META-INF/context.xml
_はTomcatとクローンに固有であることに注意してください。各servletcontainer/appserverには、JNDIリソースを定義する独自の方法があります。たとえば、Glassfishでは、Webベースの管理インターフェイスを使用してそれを行います。
3:_
web.xml
_ファイルを記述し、_Tomcat 6.0\webapps\myapp\WEB-INF
_の下に配置する必要がありますか?はいの場合、ファイルの内容は何ですか?
常に提供する必要があります。リソースを構成するだけでなく、サーブレット、フィルター、リスナー、およびWebアプリケーションを実行するためのそのような必須のものを定義することもできます。このファイルは、標準のサーブレットAPIの一部です。