2011-08-02 12 views
2

実行時に、一部のPDFファイルからデータを抽出してデータベースの一部のテーブルを作成または更新する小さなアプリケーションを作成しました。このデスクトップアプリケーションではすべてうまく動作しますが、Webサイトの管理者がPDFファイルをアップロードできるようにすることが次のステップであり、Javaプログラムが実行され、それに応じてテーブルが更新されます。Webサーバーで作成したJavaプログラムを使用する

問題はどこから始めるのか分かりません(サイトはまだ行われていませんが、いくつかのテストを実行しており、PHPでコード化される予定です)。私は、サーバーにプログラムを実行させ、オフラインバージョンと同じようにすべてを更新させるために必要な技術の種類を知りたいと思います。場合によってはすべてを更新するのにしばらく時間がかかるので、PDFをアップロードするユーザーは、サーバーがその仕事をしている間も他のページをブラウズし続けることが理想的です。 (私はおそらく、サーバがファイルを処理し終わったときに、プログラムが正常に終了したかログファイルに残っていないかを具体的に実装するでしょう)

誰かがGoogleで検索するか、ポインタ?私は自分のウェブサイトがどこでホストされるのかを選択していないので、もし誰かが私がこのようなアプリケーションの実行をサポートしているかどうかを知るために何を探すべきか教えてもらえれば、

これは他のプログラミング言語にも当てはまります。私は少しPythonとC++を知っています。将来、私はWeb上で使用したい言語でいくつかのアプリケーションを使用するかもしれません。

もし私がこれに正しい方法で近づいていないなら、私は他の提案をすることができますが、最良の解決策は、Javaプログラムをそのままにしておきたいと思っています。むしろそれをもう一度始める必要はありません。

答えて

1

ホストが* NIXベースの場合は、crontab(自動タスクスケジューラ)を使用して一定の間隔でプログラムを実行できます。 「新しい」PDFが存在するかどうかを確認し、存在する場合はプログラムを実行します。 Windowsタスクスケジューラタイプのプログラムを使用してWindows上で実行する方法があります。これはおそらく最も簡単な方法です。

代わりに使用できますshell_exec()をPHPで使用して、* NIXシステムで直接Javaプログラムを実行するコマンドを実行できます。

+0

おそらく私はそれを使っているホストのほとんどがUNIXベースなので...私は別の質問で読んでいたときに私のプログラムをサーブレットにしなければならないのか、スケジューラのことは素晴らしいです(特に私が将来持っている他のアイデアの場合)。しかし、私のプログラムを手動で呼び出す方法があるかどうかを知りたいのです(つまり、ユーザーがアップロードボタンをクリックして、 )。私は、この2番目の方法は、一定の間隔でそれを減速するのではなく、1日中の解析にまたがるので、サーバーに負荷をかけないように感じます。 –

+0

編集された回答。通常のjarを実行することができます。 1分間隔でも解析するだけで、システムに軽い負荷がかかるので、方法を教えてもらえませんが、おそらくもっと安全です。ウェブサーバ上でシェルコマンドを実行するのは悪い考えのようですが、私はそれがそうであると言う文献は見つけられません。 –

+0

これは完璧な意味を持っています。私はそれを調べるつもりです!あなたの答えとあなたの時間のために多くのおかげで! –

関連する問題