Servlet クラスの doPost に次のコードがあります。
私が直面している問題は、データベーステーブルにレコードを保存すると、ファイル名とサイズが繰り返されることがあります。つまり、同じファイル名とサイズが複数回挿入されますが、ディレクトリに保存すると、すべてのファイルが保存されます。重複。
たとえば、10 個のファイル名を保存している場合、spring-security-ntlm-3.0.2.SNAPSHOT.jar
を 2 回繰り返しjsf-api-2.0.3.jar
ますが、ファイルはファイル サーバーに正しく書き込まれます
この理由は何ですか?また、どうすれば問題を解決できますか?
List<FileItem> items = uploadHandler.parseRequest(request);
for (FileItem item: items) {
fileName = item.getName();
if (fileName != null) {
fileName = FilenameUtils.getName(fileName);
}
if (!item.isFormField()) {
File file = new File(folderName + fileName);
item.write(file);
projectList = new ArrayList<Project>();
projectList.add(lessonAttachment);
for (Project obj: projectList) {
obj.setProjectId("M2K90");
obj.setFileName(fileName);
Integer size = (int)(long)item.getSize();
obj.setSize(size);
myDAO.saveProject(projectList);
}
}
}