• ベストアンサー

JAVAでできますか?

JAVA未経験者です。 インターネット上で、テキストファイルのデータを更新、 データ同士をマッチング、メールの送信などJAVAでできるのでしょうか? リファレンスなどからマッチングとメールの送信に関しては できそうな感じですが、テキストデータの更新については、どうでしょうか? CGIならできるようですが、ユーザーリクエストのたびに プロセスが起動するというデメリットがあるらしいので。 他にこれらの機能をWEBで実現するために、使える言語などありましたら教えてください。

  • Yocha
  • お礼率96% (132/137)

質問者が選んだベストアンサー

  • ベストアンサー
noname#8330
noname#8330
回答No.3

ん~。規模によるなぁ。正直PHP+MySQL当たりが最適なソリューションだと感じる。 ってのも、クライアント、サーバ双方にアプリケーションを作成して、TCP/IPで通信するなんてのもありだけど、無駄にコードが大きくなるし、自分でサーバ立てるにしろ、借りるにしろ、恐らくJava入れるより、PHPの方が入ってるケースは多いだろうし。 Javaでやる場合は、メールのAPIが標準でも用意されてるし、james(Avalon)を使えば殆どの事は出来ます。 マッチングに関しても、正規表現は十分に使えるので、Javaで出来ない事は無いです。 何れにしろ、バックエンドにDBを配した構成の方が管理は楽です、PHPならMySQL、JavaならHSQLDBあたりを使うのが宜しいでしょう。

Yocha
質問者

お礼

ありがとうございます。 今回はDB入れるほどの規模のデータでないので、 テキスト更新できればよいと思っていますが、 もっと大量のデータで頻繁に更新処理があれば、やはり DBを配するべきでしょうね。更新処理もSQL使えるので楽だし。 PHPも勉強してみます。 いろいろアドバイスいただいて、参考になりました。

その他の回答 (2)

noname#8330
noname#8330
回答No.2

なるほど、クライアントサイドでの話か。 いまいち、状況がわからんけど、次のどちらに近い運用? ニュースサイトの記事を、自分のパソコンでクリッピングして、ローカルにあるニュースより新しいものがあればメールで自分に知らせる。 自分のPCのIPアドレスを常にホームページにアップして変わった場合はメールで自分に知らせる。 どちらも過去に自分が行った事があるんだけど。どうでしょう?

Yocha
質問者

お礼

2番目の「自分のPCのIPアドレスを常にホームページにアップして変わった場合はメールで自分に知らせる。」 のほうが近いかな。 概要をいえば、 「データをアップロードしたらメールを登録者に送信する。ただし、登録者それぞれにメールの内容は違うので データとマッチングしながらメールを作成しつつ送る。登録者の更新も行なう。」 無理にWEBアプリでなくてもよいのですが、インターネットがあれば どこでも行なえるメリットがあるし、あと勉強のためです。 JAVAよりPHPのほうが軽い感じがしますね。 JAVAでやろうとしたら、XML+DOMなのかな? 知識がほとんどないので、混乱中です。

noname#8330
noname#8330
回答No.1

普通にPHPあたりがお奨めです。 Javaでも当然出来ますよ。リクエストの度にプロセスが起動するのが嫌なら、mod_perlやmod_phpでapacheに処理系を組み込んで起動させる方法もあります。 正直、JavaはEJB使うような規模でないと「美味しくない」って個人的には考えてる。

Yocha
質問者

お礼

早い回答ありがとうございます。 Webサーバ立てたりデータベースソフト入れるほどの ものじゃないので、ホントにテキストの更新ができりゃいいんです。 PHPも検討してみます。

関連するQ&A

  • JAVA関連の用語について

    プログラマ初心者です。 JAVA関連において、「Java」をはじめ、「JavaScript」・「JSP」・「Javaサーブレット」・「JavaBeans」・「CGI」・「PHP」等、多数の用語が存在しています。用語辞典を見ても良く分からないのですが、用語の意味が簡単に分かる方法ってあるのですか。Webアプリケーションを作ってみようと思っているのですが、何(言語)を使ってよいのか分かりません。もちろん作るものによって言語も変わってくるとは思いますが。

    • ベストアンサー
    • Java
  • VBで暗号化した文字列をJavaで複合化することは可能でしょうか。

    VBで暗号化した文字列をJavaで複合化することは可能でしょうか。 (異なる言語間での暗号化/複合化は不可能でしょうか。) 現在考えているのは、BlowFishで暗号化し、BASE64でエンコードしたリクエストを送信し、 Java側でBASE64でデコードし、BlowFishで複合化することを考えています。 VBとJavaで同じ文字列を暗号化して比較してみたところ、一致しませんでした。

  • JAVAで作るプログラムとは

    HPに使うJAVAスクリプトの勉強をしたく、JAVAとスクリプトは違う事を知らずにJAVAの通信教育を申し込んでしまいました。 JAVAはサーバー側のプログラミング言語で、 スクリプトはクライアント側のスクリプト言語でブラウザ上で動作する。 申し込んだものは仕方ないので頑張ってJAVAを理解したいと思うのですが、 ネット上のJAVA講座を見ると最初にJAVAをインストールするとあります。 これはJAVAを作成するソフトのようなものですか? JAVAで作るプログラムとはOSのようなものですか? JAVAでプログラムを作ってHPの更新やスクリプトが作成できるのですか? そもそもJAVAで作るプログラムとはどのように利用するのか、 プログラムの意味がよく分かりません。 JAVAとスクリプトの違いはもう良いのでプログラムについて 分かりやすく教えてください。

    • ベストアンサー
    • Java
  • JAVAアプレットからJavaScriptへデータを渡すには?

    こんにちは。 JAVAアプレットはパラメータタグでhtmlからテキストデータを受け取ることができますが、 反対にJAVAアプレットからhtml(たとえばフォームのテキストエリアなど)に、テキストデータを渡すことはできますでしょうか? サンプルがあるとたすかるのですが。 よろしくお願い致します。

    • ベストアンサー
    • Java
  • JAVAプログラマーは人手不足?覚えるならやはりJAVAが良い?

    Webデザインをやっていましたが、プログラミングもやらなくてはならなくなりました。 いったいどのプログラミング言語が良いのか考えておりますが、JAVAが人手不足だとスクールから聞きました。ホントのホントか?と聞いても間違いないと言われます。 スクールは売上上げたいだけかも知れないので話半分に聞いていますが、本当にJAVAプログラマは需要が多く人手不足なんでしょうか? 「確かにそうだが、実はハイレベルプログラマしか需要は無い」のが現実とかじゃないでしょうか。 生活の為にツブシをきくようにするのが第一優先なので、プログラミングが嫌でも何でもただただやるだけなんですが、どうせ好きでないことをやるのだからせめて需要が多くツブシがきく言語が良いわけですが、やはり言語としてはJAVAが良いでしょうか? 例え中小企業に多い共用レンタルサーバでPHPやCGIを操ろうとしても、JAVAがわかっていれば楽である、とも聞きますが。 宜しくお願い申し上げます。

  • Javaで自分のプロセスIDが取得したい

    Java言語でバッチアプリケーションを製作しています。 "自分のプロセスIDと同じ名前のファイルを検索する"必要があるのですが、Javaでそのようなことができるのでしょうか。 自分のプロセスIDが"1234"だとしたら、対象ディレクトリの"1234"というファイルを検索するというようなものです。 OSはWindowsXPまたはHP/UXです。

    • ベストアンサー
    • Java
  • Javaのアップデート後

    以前更新を怠ったせいでウィルス感染し、以来毎日様々なものの更新を毎日数回チェックし、最新バージョンを常にダウンロードするようにしています。Javaもアップデートのコンソール?をショートカットアイコン設定し、毎日更新状態を確認していました。 ついさっき、Javaの更新があるという事で手動ですぐアップデートしました。が、なぜかダウンロード過程で失敗したらしく、インストール中に固まってしまいキャンセルしました。 案の定その後状態がわからなくなって、最新のソフトだと確認出来はしたもののまともに機能するかどうかわからなかったので一度コンパネからJavaをアンインストールしました。そののちJavaのサイトに行って「最新のJavaをインストール」から再度ダウンロードし、今度は成功、最新状態のチェックでもオーケーということで、Javaそのものの最新データインストールは成功し問題なくwebも機能しています。 が、ショートカットしていたJava Updateを立ち上げると「Java」タブで以前は出来ていた「更新の確認」が出来なくなりました。というかその項目全てがタブから消えた?状態です。再起動しても変わりません。「Java」タブで出来るのは「JavaアプリケーションとアプレットのJavaランタイム・バージョンと設定を表示および管理します」という項目とそのしたの「表示」ボタンだけです。以前は「更新の確認」ほかなんかもっとあったと思うのですがそれしか今はありません。 これだと更新の確認が出来ないので設定の不備なのかバージョンが変わった事によって仕様そのものが変わったのか、また更新の確認はこれからどうすればいいのか、詳しい方どうか教えて下さい。そもそも一度しくじったのでJavaそのものも大丈夫なのかどうかそこから自信がなくなりました。 すみませんが急いでいます。どうかお詳しい方、よろしくお願い致します。 ちなみにウィンドウズ7、Javaのバージョンは「バージョン7の更新67」です。(合ってるかな?)

  • Javaプログラム同士のプロセス間通信について

    Java初心者です。 デーモン化したJavaプログラムとJavaサーブレット間のプロセス間通信を 行いたいと思っていますがどのようにしたものか悩み中です。 ○デーモン化したJavaプログラムは、 1、あるポートからSocket通信でデータを受信し、受信したデータをDBに格納する 2、クライアントからの要求で1で保存したデータを加工して送信 ○サーブレットプログラムでは、 上記のデーモン化プログラムの設定等をブラウザ上から変更できるようにしたいと考えています。 設定とは、例えば受信したデータを全てDBに保存せずに ブラウザから条件を設定できてフィルターするような動作に変更できたり、 また、デーモン化プログラムの動作をブラウザ上から停止、開始できるようにしたいのです。 上記の様な構成の場合にプロセス間通信をする必要があると思いますが、 どの様なプロセス間通信を使えばいいのか悩んでいます。 ほんとうは上記の様な2つのプログラムを1つのプログラムで出来ればいいなぁ~と考えているのですが、、 実現方法が判りません。。 なにか名案はございませんでしょうか? わかりづらい説明でもうしわけございません。 参考になるかわかりませんが、イメージ図を、 <イメージ図> デ  data   開  data    ク ー --------> 発 -------->  ラ タ        中         イ 鯖        鯖         アント          ↑          |          |設定変更          |       管          └--------- 理                   者 よろしくおねがいします。

    • ベストアンサー
    • Java
  • Javaのフレームワークについて

    Javaのフレームワークについての質問です。 現在、Webアプリケーションのショッピングサイトのようなサーバー側の規模がちょっと大きくなるものに関しては、スクリプト言語のPHPやRubyの代表的なフレームワークを使って作成しているのですが、Java用のWebアプリケーションのフレームワークもこれから使ってみたいと考えています。 それで、質問なのですが、 (1)現在、Java用のWebアプリケーション作成のフレームワークで世の中で皆さんが一番使われているものってどれになるのでしょうか?私が現在知っている限りでは、Struts、Struts2、JSF(Java Server Faces)、Seasar、Seasar2 くらいがあるのですが、使い分けのコツみたいなものがあれば教えていただきたいのです。(それぞれの、メリット、デメリットのようなもの。) (2)スクリプト言語のフレームワークとJavaのフレームワークの使い分けのようなものも分かれば教えてください。私の認識では、Java用のフレームワークを用いて設計しなければいけないものって、たとえば大手銀行の決済システムとか、かなり規模の大きなものを想定しています。プログラムの動作スピードを上げたい時とか、セキュリティー関係を厳重に行い時などを想定しています。Javaのフレームワークを使うメリットなども分かれば教えてください。 よろしくお願い致します。

  • Javaで暗号化

    Javaで暗号化をする作業が発生しました。 環境的には、サーバー(OS:Windows2000+Webサーバー +Java)側でテキストファイルを暗号化して、クライ アント(Linux+C or Windows2000+VB or WindowsXP+ C#)で復号化するのが流れです。 Javaには、暗号化するパッケージがあるので、同じ言語が使えるのであれば問題ないと思いますが、違う 言語で復号化できないのでは(?)と想像しました。 そのため、ハッシュを用いて行う事も検討していま す。 このような環境で暗号化に良いサイトや資料などあり ましたら教えてください。