Maven プロジェクトのリモート デプロイメント && Tomcat を使用してデータベース接続を構成する方法

Maven プロジェクトのリモート デプロイメント && Tomcat を使用してデータベース接続を構成する方法

1つ。 tomcat を使用したリモート展開

1.1 発生した問題:

プロジェクトでは、サードパーティの jar パッケージを参照する必要があります。 mvn を使用してプロジェクトをパッケージ化すると、エラー メッセージが報告されます: 'dependencies.dependency.systemPath'for com.dingtalk.api:taobao-sdk-java:jar must be omitted.この問題の原因は、mvn がプロジェクトをパッケージ化するときに、最初に pom.xml を読み込むことです。ローカル リポジトリに依存関係がない場合、エラー メッセージが報告されます。
解決方法: コマンド Mvn install:install-file -Dfile=E:\taobao-sdk-java-auto_1479188381469-20200422.jar -DgroupId=taobao-sdk-java -DartifactId=taobao-sdk-java -Dversion=2.0 -Dpackaging=jar を使用して、サードパーティの jar パッケージをローカル ウェアハウスにインストールします。 pom 依存関係に war を追加し、プロジェクトを war パッケージにパッケージ化します。 そうしないと、デフォルトで jar パッケージになり、デプロイできなくなります。 tomcat config ディレクトリで tomcat-users.xml を設定した後、tomcat を再起動しても問題が解決しない場合は、tomcat サービスを再起動します。 http://localhost:8080/manager/html に正常にアクセスできる場合、構成が成功したことが証明されます。エラーを見つけるには、tomcat ログ情報を通じてエラーの原因をすばやく特定し、問題解決の効率を向上させることができます。5. 以前の試みが失敗した理由は、このプロジェクトがコピーされ、idea のターミナルコマンドラインのパスが以前のプロジェクトのパスのままだったためです。以前のプロジェクトの pom はプラグインを構成していなかったため、接続できませんでした。
1.2 リモート展開構成
(1)プラグインを追加する:

<プラグイン>
  <グループ ID>org.apache.tomcat.maven</グループ ID>
  <artifactId>tomcat7-maven-プラグイン</artifactId>
  <バージョン>2.2</バージョン>
  <構成>
    <ユーザー名>管理者</ユーザー名>
    <パスワード>123456</パスワード>
    <url>http://47.102.123.186:8095/manager/text</url>
    <server>tomcatServer</server> // サーバーの ID と一致するようにする<update>true</update>
    <path>/zw</path>//プロジェクト名</configuration>
</プラグイン>

(2)tomcatディレクトリ内のtomcat-users.xml設定ファイルを設定します。

<ロール ロール名="admin-gui"/> 
<role rolename="manager-gui"/> // HTML インターフェイスへのアクセスを許可します (つまり、URL パスは /manager/html/* です) <role rolename="manager-script"/> // プレーン テキスト インターフェイスへのアクセスを許可します (つまり、URL パスは /manager/text/* です)
<ユーザー ユーザー名="admin" パスワード="123456" 役割="admin-gui、manager-gui、manager-script"/>
//知らせ!このユーザーには複数のロールを追加できます。リモート展開の場合、少なくともこのロールは必須です: manager-script。視覚的な管理のために manager-gui を有効にすることもできます。

(3)Mavenのsetting.xmlファイルをserversタグの下で設定します。

<サーバー>		
<id>tomcat サーバー</id>
<ユーザー名>管理者</ユーザー名>
<パスワード>123456</パスワード>
</サーバー>

(4)次のコマンドを使用します:mvn tomcat7:deploy

二。 tomcat 構成ファイルを使用してデータベース接続構成を構成するための具体的な手順

tomcat の conf ディレクトリで server.xml、context.xml、web.xml を構成する必要があります。
具体的な構成は次のとおりです。Server.xml の GlobalNamingResources タグの下で構成します。

`<リソース名="jdbc/DataSource" auth="コンテナ"
タイプ="javax.sql.DataSource"
ドライバークラス名="com.microsoft.sqlserver.jdbc.SQLServerDriver"		
url="jdbc:sqlserver://192.168.0.1;データベース名=xydi" ユーザー名="sa" 
パスワード="sa" 
maxActive="20" // 最大接続数 maxIdle="10"
maxWait="-1"/>`//最長待機時間

Context.xml での構成:

<ResourceLink name="jdbc/DataSource" global="jdbc/DataSource" 
type="javax.sql.DataSource"/>// server.xml の設定情報をインポートします

Web.xml での構成:

<リソース参照>
<res-ref-name>jdbc/DataSource</res-ref-name>//リソースの名前と一致します <res-type>javax.sql.DataSource</res-type>
<res-auth>コンテナ</res-auth>
</リソース-ref>`

Spring フレームワークを使用する場合:

<bean id="dataSource" クラス="org.springframework.jndi.JndiObjectFactoryBean">
  <プロパティ名="jndiName" 値="java:comp/env/jdbc/DataSource"/>
  <プロパティ名="expectedType" 値="javax.sql.DataSource"/>
</bean>

Spring フレームワークを使用しない場合:

接続 con = null;
コンテキスト c = 新しい InitialContext();
DataSource ds = (DataSource) c.lookup("java:/comp/env/jdbc/DataSource"); //プロジェクト名はcontext.xmlのプロジェクト名と一致している必要があります		
con = ds.getConnection();

要約する

Maven プロジェクトのリモート デプロイメントと Tomcat を使用したデータベース接続の構成に関するこの記事はこれで終わりです。Maven プロジェクトの Tomcat データベース接続のリモート デプロイメントの詳細については、123WORDPRESS.COM の以前の記事を検索するか、次の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。

以下もご興味があるかもしれません:
  • idea2020.3 Maven環境の設定とTomcatの設定に関する詳細なチュートリアル
  • Java (JDK/Tomcat/Maven) ランタイム環境の設定とツール (idea/eclipse) のインストールに関する詳細なチュートリアル
  • IDEA は Java 開発環境 (maven、gradle、tomcat) を構成します。
  • SSMプロジェクトは、ホットデプロイメント構成を実装するためにTomcatとMavenを使用してWARパッケージとしてデプロイされることが多い。
  • Ideaはプロジェクトのデプロイメントを実装するためにmaven-tomcat-pluginを設定します
  • Maven Web プロジェクトを Eclipse にインポートし、Tomcat で実行するように設定します。
  • Maven プロジェクトで Tomcat を設定する 2 つの方法

<<:  Vueはechartsに基づいて3次元の縦棒グラフを実装します

>>:  Docker での MySQL 8.0.20 のインストールと設定のチュートリアル

推薦する

Docker Compose ネットワーク設定の説明

基本概念デフォルトでは、Compose はアプリケーション用のネットワークを作成し、サービスの各コン...

Docker Desktop で rocketmq をインストールするための非常に詳細なチュートリアル

Dockerデスクトップをインストールするダウンロード先: Docker Desktop for M...

js で 0ms 遅延タイマーを実装するいくつかの方法

目次キューマイクロタスク非同期/待機メッセージチャネルやっと付録ここ二日間、「タイムリーな setT...

ネイティブJavaScriptカルーセル実装方法

この記事では、JavaScriptカルーセルの実装方法を参考までに紹介します。具体的な内容は次のとお...

Ubuntu LinuxにOracle Java 14をインストールする方法

最近、Oracle は Java 14 (または Oracle JDK 14) の一般公開を発表しま...

CSS 属性セレクタを使用して HTML DNA を接合する方法

CSS 属性セレクターは素晴らしいです。大量のクラス名を追加することを回避し、コード内の問題を指摘す...

Vue3+スクリプト設定+ts+Vite+Volarプロジェクト

目次Viteを使用してvue + tsプロジェクトを作成するVue 3の3つの構文オプションAPIコ...

MySQL 8.0.13 解凍版のインストールと設定方法のグラフィックチュートリアル

1. インストール1. MySQLをダウンロードするダウンロードアドレス: リンクアドレスブラウザで...

画像を使用してハイパーリンクのパーソナライズされた下線を実現します

画像内に下線付きのリンクが表示されても驚かないでください。実はとても簡単なので、あなたにもできるので...

HTML ページはダーク モードの実装をサポートします

2019年から、AndroidとiOSの両方のプラットフォームでダークモードが使用され始めました。も...

vue+el-upload は複数ファイルの動的アップロードを実現します

vue+el-upload 複数ファイルの動的アップロード、参考までに具体的な内容は以下のとおりです...

シャトルボックス機能を実装するためのVueの詳細なコード

Vue - シャトルボックス機能を実装します。効果図は次のようになります。 CS 。移行{ ディスプ...

JS で Websocket ベースのマルチターミナル ブリッジング プラットフォームを実装する方法

目次1. デバッグ対象2. WebSocketの機能3. ソケット接続を確立する3.1 部屋の作成方...

Linux サービス管理の 2 つの方法、service と systemctl の詳細な説明

1.サービスコマンドサービスコマンドは実際には/etc/init.dディレクトリに移動し、関連プログ...

Ubuntu 16.04 に nvidia ドライバー + CUDA + cuDNN をインストールする詳細なチュートリアル

準備1. GPUがCUDAをサポートしているかどうかを確認するlspci | grep -i nvi...