spring boot thymeleaf 图片上传web项目根目录操作步骤

网友投稿 433 2023-02-11


spring boot thymeleaf 图片上传web项目根目录操作步骤

thymeleaf介绍

简单说, Thymeleaf 是一个跟 Velocity、FreeMarker 类似的模板引擎,它可以完全替代 jsP 。相较与其他的模板引擎,它有如下三个极吸引人的特点:

1.Thymeleaf 在有网络和无网络的环境下皆可运行,即它可以让美工在浏览器查看页面的静态效果,也可以让程序员在服务器查看带数据的动态页面效果。这是由于它支持 html 原型,然后在 html 标签里增加额外的属性来达到模板+数据的展示方式。浏览器解释 html 时会忽略未定义的标签属性,所以 thymeleaf 的模板可以静态地运行;当有数据返回到页面时,Thymeleaf 标签会动态地替换掉静态内容,使页面动态显示。

2.Thymeleaf 开箱即用的特性。它提供标准和spring标准两种方言,可以直接套用模板实现JSTL、 OGNL表达式效果,避免每天套模板、该jstl、改标签的困扰。同时开发人员也可以扩展和创建自定义的方言。

3.Thymeleaf 提供spring标准方言和一个与 SpringMVC 完美集成的可选模块,可以快速的实现表单绑定、属性编辑器、国际化等功能。

form方式上传:

//html:

image

提交更改

//controller

@RequestMapping(value = "/save",method = RequestMethod.POST)

public String saveGoodsPage(@RequestParam(value = "id",required=false) String id,@RequestParam(value = "name",required=false) String name,@RequestParam(value = "sn",required=false) String sn,

@RequestParam(value = "number",required=false) String number,@RequestParam(value = "weight",required=false) String weight,

@RequestParam(value = "marketPrice",required=false) String marketPrice,@RequestParam(value = "shopPrice",required=false) String shopPrice,

@RequestParam(value = "unit",required=false) String unit, @RequestParam(value = "detail",required=false) String detail,@RequestParam (value="file")MultipartFile file ) {

if (!file.isEmpty()) {

try {

BufferedOutputStream out = new BufferedOutputStream(

new FileOutputStream(new File("src/main/resources/static/images/product/" + sn + ".jpg")));//保存图片到目录下

out.write(file.getBytes());

out.flush();

out.close();

String filename = "\\/images\\/product\\/" + sn + ".jpg";

/*user.setTupian(filename);

//userRepository.save(user);//增加用户*/

} catch (FileNotFoundException e) {

e.printStackTrace();

return "upload error," + e.getMessage();

} catch (IOException e) {

e.printStackTrace();

return "upload error" + e.getMessage();

}

}

//...其他操作

}

补充:变量表达式和星号表达有什么区别吗?

如果不考虑上下文的情况下,两者没有区别;星号语法评估在选定对象上表达,而不是整个上下文什么是选定对象?就是父标签的值,如下:

Name: Sebastian.

Surname: Pepper.

Nationality: Saturn.

这是完全等价于:

Name: Sebastian.

Surname: Pepper.

Nationality: Saturn.

当然,美元符号和星号语法可以混合使用:

Name: Sebastian.

Surname: Pepper.

Nationality: Saturn.

总结

以上所述是给大家介绍的spring boot thymeleaf 图片上传web项目根目录操作步骤,希望对大家有所帮助,如果大家有任何疑问请给我留言,会及时回复大家的。在此也非常感谢大家对我们网站的支持!


版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:管理api接口文档(API接口管理)
下一篇:Eclipse配置使用web.xml的方法
相关文章

 发表评论

暂时没有评论,来抢沙发吧~