🐡

【初心者向け/ITスクール 82日】Springboot miniproject(JPA, 掲示板)

2023/11/15に公開

はじめに

今日は、ITスクールに通った82日目の日です。
今日はSpringBootで以前失敗した写真アップとに再挑戦し、簡単な掲示板をYoutubeを参考しながらクローンコーディングしてみました。

写真アップロード

以前はなぜかdirを設定することができなかったですが、MultiFilePartというクラス、path,UUIDなどを始めて活用してみました。

Entity

@Entity
@Data
public class Board {

    @Id
    @GeneratedValue(strategy = GenerationType.IDENTITY)
    private Integer id;
    private String title;
    private String content;
    private String filename;
    private String filepath;
}

BoardService

    public void write(Board board, MultipartFile file) throws Exception {

        String projectPath = System.getProperty("user.dir") + "\\src\\main\\resources\\static\\files";

        UUID uuid = UUID.randomUUID();

        String fileName = uuid + "_" + file.getOriginalFilename();

        File saveFile = new File(projectPath, fileName);

        file.transferTo(saveFile);

        board.setFilename(fileName);
        board.setFilepath("/files/" + fileName);
        boardRepository.save(board);
    }
    

結果

Discussion