2012-01-04 14 views
1

サーブレットとJSPを使用して構築されたWebアプリケーションがあります。私は、Apacheの共有ライブラリを使用してファイルアップロード機能を構築しました。ユーザーが巨大なファイルをアップロードするのを制限したいので、制限を20 MBに設定してください。ファイルサイズの取得 - Apache Commonsファイルのアップロード

Fileitem.getSize()の方法を使ってサイズを取得していますが、サイズを決定するためにファイル全体を読み取っていると思います。ユーザーが数GBのファイルをアップロードしようとすると、アプリケーションサーバーに大きなオーバーヘッドが追加されませんか?ファイルサイズを取得するための良い選択肢はありますか?

答えて

1

ServletFileUploadsizeMaxプロパティを設定すると、一定量以上のデータが読み込まれるとすぐに要求が拒否されます。

また、DiskFileItemFactoryを使用すると、特定のサイズを超えるファイルがメモリに保持されるのではなくローカルディスクにストリーミングされるようにしきい値を設定することができます。

+0

こんにちは、ありがとう!私はこのエラーメッセージを受け取りました - "フィールドuploadFileは20文字の最大許容サイズを超えています"。文字はバイトと同じですか?バイトを指定する方法はありますか? –

関連する問題