11月27日

YAGNI

YAGNI – Wikipedia
You ain’t gonna need it

機能は実際に必要となるまでは追加しないのがよい

ソースコードは短い方が良い。→ 読みやすい・理解しやすい・バグが出にくい

とりあえずテストにパスするコードを書いて、あとのリファクタリングでソースコードを整理するというやり方でもよい。

KISSの原則

KISSの原則
Wikipedia の YAGNI のページに関連リンクがある。

Keep it simple stupid の略語。

ファイルアップロード

ファイルアップロードは、Springの公式サイトに書いてある実装がわかりやすい。

Getting Started · Uploading Files – Spring

ファイルを保存する処理は、Webページには書かれてなく、ZIPファイルをダウンロードした中の FileSystemStorageService クラス内にある。
Serviceクラスを作ってもいいが、必要な部分をコントローラにコピーしてもよい。

@RequestMapping(value = "アップロード先URL", method = RequestMethod.POST)
public String handleFileUpload(@RequestParam("file") MultipartFile file, Model model) {
        // file を保存
        String filename = StringUtils.cleanPath(file.getOriginalFilename());
        try {
            if (file.isEmpty()) {
                throw new StorageException("空のファイルです " + filename);
            }
            if (filename.contains("..")) {
                // This is a security check
                throw new StorageException("ファイル名に「..」が含まれてます " + filename);
            }
            Files.copy(file.getInputStream(), Paths.get("保存先ファイル名"),
                    StandardCopyOption.REPLACE_EXISTING); // 上書き
        } catch (IOException e) {
            throw new StorageException("Failed to store file " + filename, e);
        }
        return "uploadcomplete"; // 完了後に表示するjsp
    }

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です