gpt4 book ai didi

java - 隐藏 @ModelAttribute 变量不出现在 URL 中? Spring MVC

转载 作者:塔克拉玛干 更新时间:2023-11-02 08:55:45 25 4
gpt4 key购买 nike

我正在使用 Spring MVC 3 并且我有以下 Controller

@RequestMapping(value="FileUploadForm",method=RequestMethod.GET)
public String showForm(ModelMap model){
UploadForm form = new UploadForm();
model.addAttribute("FORM", form);
return "FileUploadForm";
}

@RequestMapping(value="FileUploadForm",method=RequestMethod.POST)
public ModelAndView processForm(@ModelAttribute(value="FORM") UploadForm form,BindingResult result){
if(!result.hasErrors()){
FileOutputStream outputStream = null;
String filePath = System.getProperty("java.io.tmpdir") + "/" + form.getFile().getOriginalFilename();
try {
outputStream = new FileOutputStream(new File(filePath));
outputStream.write(form.getFile().getFileItem().get());
outputStream.close();
System.out.println(form.getName());


return new ModelAndView(new RedirectView("success?Filepath="+filePath, true, true, false));
} catch (Exception e) {
System.out.println("Error while saving file");
return new ModelAndView("FileUploadForm");
}

}else{
return new ModelAndView("FileUploadForm");
}

}

这个 Controller 获取文件路径并用来做一个爆炸

@RequestMapping(value="success")
public String blasta(@ModelAttribute("Filepath") String filepath, Model model){
Blast sb = new Blast("somepath");
String[] blastIt = sb.blast("somepath", filepath);
String newLine = System.getProperty("line.separator");
ArrayList<Object> result = new ArrayList<>();

for (int i = 5; i < blastIt.length; i++) {
if(blastIt[i].startsWith("Lambda")){
break;
} else {
seila.add(blastIt[i]);
System.out.println(blastIt[i]);
}
model.addAttribute("RESULT", result);

}
File f1 = new File(filepath);
f1.delete();
return "success";

}

一切正常,但我仍然在 url 中获取文件路径。

http://localhost:8081/Ambase/success?Filepath=filePath

如果可能的话,我想要这种方式

http://localhost:8081/Ambase/success

最佳答案

尝试将此代码添加到 servlet-config.xml

<mvc:annotation-driven ignoreDefaultModelOnRedirect="true" />

关于java - 隐藏 @ModelAttribute 变量不出现在 URL 中? Spring MVC,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12628541/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com