public interface MultipartFile extends InputStreamSource
ファイルの内容は、メモリに保存されるか、一時的にディスクに保存されます。どちらの場合でも、必要に応じて、ユーザーはファイルの内容をセッションレベルまたは永続ストアにコピーする責任があります。一時ストレージは、リクエスト処理の終了時にクリアされます。
MultipartHttpServletRequest
, MultipartResolver
修飾子と型 | メソッドと説明 |
---|---|
byte[] | getBytes() ファイルの内容をバイトの配列として返します。 |
java.lang.String | getContentType() ファイルのコンテンツ型を返します。 |
java.io.InputStream | getInputStream() ファイルの内容を読み取る InputStream を返します。 |
java.lang.String | getName() マルチパート形式でパラメーターの名前を返します。 |
java.lang.String | getOriginalFilename() クライアントのファイルシステムにある元のファイル名を返します。 |
default Resource | getResource() この MultipartFile のリソース表現を返します。 |
long | getSize() ファイルのサイズをバイト単位で返します。 |
boolean | isEmpty() アップロードされたファイルが空かどうか、つまり、マルチパート形式でファイルが選択されていないか、選択されたファイルにコンテンツがないかを返します。 |
void | transferTo(java.io.File dest) 受信したファイルを指定された宛先ファイルに転送します。 |
default void | transferTo(java.nio.file.Path dest) 受信したファイルを指定された宛先ファイルに転送します。 |
java.lang.String getName()
null
または空ではない)@Nullable java.lang.String getOriginalFilename()
これには、使用するブラウザーによってはパス情報が含まれる場合がありますが、通常は Opera 以外には含まれません。
null
FileItem.getName()
, CommonsMultipartFile.setPreserveFilename(boolean)
@Nullable java.lang.String getContentType()
null
(または、マルチパート形式でファイルが選択されていません)boolean isEmpty()
long getSize()
byte[] getBytes() throws java.io.IOException
java.io.IOException
- アクセスエラーの場合 (一時ストアが失敗した場合)java.io.InputStream getInputStream() throws java.io.IOException
ユーザーは、返されたストリームを閉じる責任があります。
InputStreamSource
の getInputStream
java.io.IOException
- アクセスエラーの場合 (一時ストアが失敗した場合)default Resource getResource()
RestTemplate
または WebClient
への入力として使用して、コンテンツの長さとファイル名を InputStream とともに公開できます。void transferTo(java.io.File dest) throws java.io.IOException, java.lang.IllegalStateException
これにより、ファイルシステム内のファイルを移動したり、ファイルシステム内のファイルをコピーしたり、メモリ内のコンテンツを宛先ファイルに保存したりできます。宛先ファイルがすでに存在する場合、最初に削除されます。
ターゲットファイルがファイルシステム内で移動されている場合、この操作は後で再度呼び出すことはできません。ストレージメカニズムを使用するには、このメソッドを 1 回だけ呼び出します。
注意 : 基礎となるプロバイダーに応じて、一時ストレージは、ここで指定された相対的な宛先のベースディレクトリなど、コンテナーに依存する場合があります(例: Servlet 3.0 マルチパート処理)。絶対的な宛先の場合、一時コピーがすでに存在していても、ターゲットファイルの名前が変更されたり、一時的な場所から移動されたり、新しくコピーされたりすることがあります。
dest
- 宛先ファイル (通常は絶対)java.io.IOException
- 読み取りまたは書き込みエラーの場合 java.lang.IllegalStateException
- ファイルがファイルシステム内ですでに移動されており、別の転送に使用できない場合 FileItem.write(File)
, Part.write(String)
EEdefault void transferTo(java.nio.file.Path dest) throws java.io.IOException, java.lang.IllegalStateException
デフォルトの実装では、単にファイル入力ストリームをコピーします。
java.io.IOException
java.lang.IllegalStateException
getInputStream()
, transferTo(File)