0

Web プロジェクトの開発に Netbeans 7 を使用しています。クライアント側から受け取った画像を web/images フォルダーに保存する必要があります。

String location = getServletContext().getRealPath("/images"); 

このコードを使用すると、場所を取得できます

C:\Users\Computer\Documents\NetBeansProjects\test\build\web\images

しかし、私はに保存する必要があります

 C:\Users\Computer\Documents\NetBeansProjects\test\web\images

後でこれらの画像を JSP ページに表示する必要があるため、これらの画像は web\images フォルダーにある必要がありますね???....

4

1 に答える 1

0

それらを展開フォルダーに格納することは絶対に必要ですか? 人々が写真をアップロードする場合、通常はデータベースに保存する方が良い方法です。(サイズが小さい場合) または、デプロイメントとは別のディレクトリにあります。それらを配置に保存すると、再配置が必要になるたびにそれらが消去されます。私が提案しているルートを使用する場合は、クライアントから送信された画像を保存している場所から再提供できる単純なサーブレットを作成する必要があります。

tomcat を使用している場合は、好きな場所にファイルを保存できます。次に、server.xml ファイルに以下を追加して、定義済みの URL へのすべてのリクエストをホスト上の特定のディレクトリに渡すフィルターを作成します。

<Context path="/clientrequestpath/images" docBase="/serverpath/images/" />

path はブラウザから送信されるリクエスト URL であり、docBase はホスト上で画像をローカルに保存する場所です。この場合、サーブレットを作成する必要はありません。データベースに保存されている画像名を、クライアントに送信するときに jsp のタグに追加するだけで、クライアントは画像ファイルを自動的に要求します。

于 2012-09-30T04:00:17.643 に答える