1

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

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

4

1 に答える 1

1

sizeMaxプロパティをに設定するServletFileUploadと、一定量を超えるデータが読み取られるとすぐにリクエストが拒否されます。

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

于 2012-01-04T10:45:17.917 に答える