详解SpringMVC中的日期处理和文件上传操作
目录
- 日期格式处理
- 日期格式处理
- 创建自定义日期转换器
- 配置自定义转换器
- 文件上传下载
- 文件上传
- 文件下载
日期格式处理
文章图片
在控制器中使用对象接收数据
前端:
后端
@Controller@RequestMapping("/test")public class TestController {@RequestMapping("/add")//表单提交的多个数据,在控制器方法中可以使用对象接收//但是提交的数据的key必须要与对象的属性名一致public String addBook(Book book){return "/tips.jsp"; }}
日期格式处理 如果前端需要输入日期数据,在控制器中转换成Date对象,SpringMVC要求前端输入的日期格式必须为yyyy/MM/dd
如果甲方要求日期格式必须为指定的格式,而这个指定格式SpringMVC不接受,该如何处理呢?
自定义日期转换器
创建自定义日期转换器
/*** * 1.创建一个类实现Converter接口,泛型指定从什么类型转换为什么类型 * 2.实现convert转换方法 */public class MyDateConverter implements Converter {SimpleDateFormat sdf = new SimpleDateFormat("yyyy年MM月dd日"); public Date convert(String s) {Date date = null; try {date = sdf.parse(s); } catch (ParseException e) {e.printStackTrace(); }return date; }}
文章图片
配置自定义转换器
文件上传下载 SpringMVC框架部署
基于Maven创建web工程
添加SpringMVC所需的依赖
Spring:context aspects jdbc test web webmvc jackson
创建SpringMVC配置文件
在web.xml中配置SpringMVC的前端控制器
在web.xml中配置SpringMVC的编码过滤器
配置springmvc静态资源处理策略
文件上传 案例:添加图书,同时提交图书的封面图片
前端提交文件
- 表单提示方式必须为post
- 表单enctype属性设置为multipart/form-data
控制器接收数据和文件
SpringMVC处理上传文件需要借助于CommonsMultipartResolver文件解析器
添加依赖:commons-io commons-fileupload
commons-io commons-io2.4 commons-fileupload commons-fileupload1.4
在spring-servlet.xml中配置文件解析器
控制器接收文件
在处理文件上传的方法中定义一个MultiPartFile类型的对象,就可以接受图片了
@Controller@RequestMapping("/book")public class BookController {@RequestMapping("/add")public String addBook(Book book, MultipartFile imgFile, HttpServletRequest request) throws IOException {System.out.println("--------------add"); //imgFile就表示上传的图片//1.截取上传文件的后缀名,生成新的文件名String originalFilename = imgFile.getOriginalFilename(); String ext = originalFilename.substring( originalFilename.lastIndexOf(".") ); String fileName = System.currentTimeMillis()+ext; //2.获取imgs目录在服务器的路径String dir = request.getServletContext().getRealPath("imgs"); String savePath = dir+"/"+fileName; //3.保存文件imgFile.transferTo( new File(savePath)); //4.将图片的访问路径设置到book对象book.setBookImg("imgs/"+fileName); //5.调用service保存book到数据库return "/tips.jsp"; }}
文件下载 显示文件列表
list.jsp
Title - 锐客网 文件列表
BookController
@RequestMapping("/list")@ResponseBodypublic String[] listImgs(HttpServletRequest request){//从imgs目录下获取所有的图片信息String dir = request.getServletContext().getRealPath("imgs"); File imgDir = new File(dir); String[] fileNames = imgDir.list(); return fileNames; }
实现文件下载
list.jsp
var htmlStr = " 下载
";
BookController
@RequestMapping("/download")public void downloadImg(String fname, HttpServletRequest request, HttpServletResponse response) throws Exception {//从imgs目录找到当前文件String dir = request.getServletContext().getRealPath("imgs"); String filePath = dir+"/"+fname; FileInputStream fileInputStream = new FileInputStream(filePath); response.setContentType("application/exe"); response.addHeader("Content-Disposition","attachment; filename="+fname); IOUtils.copy(fileInputStream, response.getOutputStream()); }
【详解SpringMVC中的日期处理和文件上传操作】以上就是详解SpringMVC中的日期处理和文件上传操作的详细内容,更多关于SpringMVC日期处理 文件上传的资料请关注脚本之家其它相关文章!
推荐阅读
- 玉器图案中的含意
- 城市更新中的文化力量|城市更新中的文化力量 | 索珊清华大学地产金融峰会分享实录
- SpringMvc|SpringMvc 如何同时支持 Jsp 和 Json 接口()
- 26/5活在爱中的秘诀朗读与分享
- Mybatis核心配置文件中的标签介绍
- Java开发学习(二十六)----SpringMVC返回响应结果
- Spring|Spring AOP全面详解(超级详细)
- FPGA刷题——信号发生器+冒泡法求6个数中的最小值
- 开源流式湖仓服务 Arctic 详解(并非另一套 Table Format)
- Tomcat生命周期详解