StringIndexOutOfBoundsException : String index out of range: -1
<input type="file" name="attFile" /> 태그를 3개 두고 컨트롤러 메서드에서 @RequestParam어노테이션을 붙여 해당 attFile 이름으로 첨부파일 배열을 받는 상황. @PostMapping("/{boardTypeSeq}/write.do")
public String write(
@PathVariable("boardTypeSeq") int boardTypeSeq,
@RequestParam HashMap<String, String> params,
MultipartFile[] attFiles, //input태그 갯수만큼이 배열 길이로 고정됨
HttpSession session,
Model model, RedirectAttributes rattr) {
...
}

@Transactional
public int savePost(BoardSaveDto dto, MultipartFile[] mfs) {
int code = 1;
try {
//1. 게시글 데이터 DB에 저장
int boardSeq = boardRepository.save(dto); //내부적으로 keyholder를 사용해 pk반환
for(MultipartFile mf : mfs) { //첨부파일 배열에 대해 루프 돌림
if(!mf.isEmpty()) { //여기 조건문을 추가해주었다.
//2. 첨부파일 물리적 저장 및
File destfile = fileUtil.saveFiles(mf);
//3-1. BoardAttachDto 생성
BoardAttachDto attachDto = BoardAttachDto.makeBoardAttachDto(mf, destfile);
attachDto.setBoardSeq(boardSeq);
attachDto.setBoardTypeSeq(dto.getBoardTypeSeq());
//3-2. 첨부파일 메타데이터 DB에 저장
boardAttachRepository.saveAttachFile(attachDto);
}
}