2011-07-09 6 views
1

私はプロジェクトを開始しました。世界中の人の歌をすべて聞かせるためのWebアプリケーションです。これまでのところ、ウェブサイトで利用できるすべての曲は戦争/曲に保存されています。そして、私のデータベースはこのファイルへのパスしか保存しておらず、うまくいきます。本当に必要なファイルをアップロードする

私はこの場所で私の曲をアップロードするために管理者(基本的に私:D)にしかアクセスできないWebページを作成したかったので、曲を追加するだけでプロジェクト全体を展開する必要はありません...今はアプリエンジンでは不可能だと読んでいますか?私はデータベースに曲を格納することをお勧めしないと思いますか?

私の問題について考えてもらえますか?どうもありがとう !

また、アプリエンジンが私の目標に適していない場合、私は自分のJavaアプリケーションをホストするための良い場所を知りたがっています。

ありがとうございました。

+0

私は英語が貧弱なためにあなたの質問をよく理解しません。ワットは正確にやりたいのですか?曲を保存していますが、これらの曲は自分だけにアクセスできますか?おそらく、あなたはGoogleストレージを見てみるべきでしょう。 @ zacheuszのBlobstoreソリューションも良いです。 Google Storageへのアップロードは、Blobstoreにアップロードするよりはるかに便利です。 – DocWiki

答えて

6

GAEでは可能です。単に、ファイルシステムではなく、Blobstoreにファイルを保存する必要があります。パスの代わりに、BLOBキーを使うことができます。

<body> 
<form action="<%= blobstoreService.createUploadUrl("/upload") %>" method="post" enctype="multipart/form-data"> 
    <input type="file" name="myFile"> 
    <input type="submit" value="Submit"> 
</form> 

そして、あなたはあなたのサイトへのアクセスを防止するためにweb.xmlの制約に設定することができます:

<security-constraint> 
    <web-resource-collection> 
     <url-pattern>/admin/*</url-pattern> 
    </web-resource-collection> 
    <auth-constraint> 
     <role-name>admin</role-name> 
    </auth-constraint> 
</security-constraint> 

そして、サーブレットからファイルを提供する:

あなたはこのようなあなたのファイルをアップロードすることができます
public void doGet(HttpServletRequest req, HttpServletResponse res) 
throws IOException { 
    BlobKey blobKey = new BlobKey(req.getParameter("blob-key")); 
    blobstoreService.serve(blobKey, res); 
+0

これを行う方法の良い例。 – Gafanha

2

IBMがGoogleの大ファンであることは本当に驚きです。私は、Googleの技術に関するIBMの公開文献のかなりの量を発見しました。うーん、なぜ?とにかく

  1. 何IBMのために良いですが、私のために良いです: http://www.ibm.com/developerworks/java/library/j-gaestorage/

  2. Googleにとって良いものは、あまりにも、私にとっては良いです。 Googleはあなたのファイルを「ファイルシステム」に保存することを望んでいません。彼らは地図の縮小ストレージを使いたいと思っています。

あなたはGoogleのリポジトリ技術があなたの「ファイルシステム」の認識より優れていると誤解されています。まず第一に、OSの原則、特に「ファイルシステム」のセクションを読む必要があります。ファイルシステムはブロブへのマップです。

GAEはクラウドです。 「CLOUD」 - デスクトップ、Webサーバー、DBサーバー、複数のディスクリートサーバーのラウンドロビンではありません。クラウドとサーバーは、アナログとディスクリートIC、連続的な累積インテリジェンス(一部の人は「間違って」ファジィロジックと呼ばれる)とディスクリートなif-then-elseロジック、量子動力学とニュートン力学の両方に似ています。

連続(または少なくともクラウドが何をしようとしているか)。連続体(または連続体での試み)では、 "ファイル"を保存することはできません。

あなたは古くなっています。クラウドに関係しない多くの最先端の技術があるので、いいえ、私は許してください。あなたは時代遅れではありません。とにかく、従来の「データベース」や「ファイルシステム」について読んだものは、クラウドの連続体には適用できません。雲の連続体の資源のシフトでは、消費者/顧客はシフトする。

Googleクラウドストレージは従来のデータベースではありません。彼らは巧みな選手のために設計され調整されています。

クラウドとは何ですか?カンザスシティ、ミズーリ州からエジプトのカイロへ電話またはデジタル接続を行うと、ルーターはあなたに最適なルートを探します。あなたのための最善のルート?いいえ、利益を最大化する最良のルートです。海底ケーブル、衛星、未知の領域などを常に移動して再構成することができます。それはあなたの会話/接続のほんの少しの時間のためにより安いので、より長いルートを取ることができます。それは「仮想」という古い用語です。

このようなシームレスな仮想世界では、従来の「ファイルシステム」には依存できません。あなたは十字軍/ジハードを建てることができ、金銭的価値が「本当の」金で裏付けられることを惜しみなく主張することによって、グローバルな仮想金融システムを破壊するキャンペーンを取り組んでいるクックがいるように主張する。

Googleストレージ、bigtable、Amazon simple dbなど、すべてが「ファイルシステム」マップと似ていますが、シミッドクラウドで機能するように設定されています。だから、クラウドを楽しんで、クラウド上の資産として "ファイル"を保存してください。

人間は、残りの宇宙と共に進化します。進化はGdの声であり、現在、雲は印刷機の登場以来の人間の進化の次の段階です。あなたは同化されます - 抵抗は無駄です。あなたは、あなたのファイルを「本当の金」のサーバーでバックアップしたいのですか? 「金」さえも派生価値であり、モナリザの価値のような仮想資産です。そして、あなたが「本当の」ファイルシステムについて持っているセキュリティ/安定性の認識もそうです。

関連する問題