簡単な Web サイトを作成して Spring フレームワークを学習しようとしていますが、問題が発生しています。
私はこのようなものを作りたいと思います: ユーザーはアップロードするファイルを選択し、リストからファイルの種類を選択します。今のところ、私は次のようなものを持っています:
<form:form modelAttribute="uploadItem" method="post" enctype="multipart/form-data">
<fieldset>
<div class="form_elem">
<label for="file">File</label>
<input type="file" name="fileData"/>
</div>
<div class="form_elem">
<label for="file_type">File type</label>
<form:select path="fileType">
<form:options items="${fileTypes}" />
</form:select>
</div>
<input type="submit"/>
</fieldset>
今私のコントローラに私が持っている
@RequestMapping(value = "/addWordFile", method = RequestMethod.GET)
public String showFileAdder(Model model) {
model.addAttribute(new UploadItem());
model.addAttribute("fileTypes", Arrays.asList("first type", "second type"));
return "questionFileAdd";
}
@RequestMapping(value = "/addWordFile", method = RequestMethod.POST)
public String processUploadedFile(UploadItem uploadItem, Model model)
throws Exception {
String type=uploadItem.getFileType();
return showFileAdder(model);
}
ここに問題があります。ユーザーがファイルのタイプを選択すると、文字列のみが取得され、SimpleFileFileReader のように、名前にクラスを使用するか、サポートするすべてのタイプのファイルに大きな switch-case ステートメントを使用するだけで、オブジェクトを手動で作成する必要があります。
String を HTML 形式で表示することは可能ですが、処理すると何らかのクラスのオブジェクトが取得されますか?