• 团队开发冲刺日(五)


      今日学习Android上传图文至后台,Servlet部分的内容。但功能未能完全实现。在此作个思路总结。 

      实现思路是Android传数据到servlet,servlet整理数据后入库。由于记录的是笔记,属于长文本,因此我是想使用text类型进行存储。随后是对图片的处理。通过查阅我得知图片存储有两种方式,一种是转化成二进制进行存储,但这种存储在每次读取时都要解析一遍,很麻烦,另一种是路径存储。因此这里涉及到流文件转换:

      参考博客:https://www.cnblogs.com/andzhang/p/6075814.html(对,还是它)

     1 // 设置文件上传路径
     2                 需要在webRoot下新建一个名为upload的文件夹,在里面再建个名为photo的文件夹
     3             String upload = this.getServletContext().getRealPath("upload/photo");
     4             
     5             // 获取系统默认的临时文件保存路径,该路径为Tomcat根目录下的temp文件夹
     6             String temp = System.getProperty("java.io.tmpdir");
     7             // 设置缓冲区大小为 5M
     8             factory.setSizeThreshold(1024 * 1024 * 5);
     9             // 设置临时文件夹为temp
    10             factory.setRepository(new File(temp));
    11             // 用工厂实例化上传组件,ServletFileUpload 用来解析文件上传请求
    12             ServletFileUpload servletFileUpload = new ServletFileUpload(factory);

      这段代码是接收文件前的准备,下面是关于ServletFileUpload的介绍,【参考博客:https://blog.csdn.net/Superman___007/article/details/80943449】:

      1.ServletFileUpload upload=new ServletFileUpload(factory);
                    创建一个上传工具,指定使用缓存区与临时文件存储位置.
            2.List<FileItem> items=upload.parseRequest(request);
                    它是用于解析request对象,得到所有上传项.每一个FileItem就相当于一个上传项.
            3.boolean flag=upload.isMultipartContent(request);
                    用于判断是否是上传.
                    可以简单理解,就是判断encType="multipart/form-data";
            4.设置上传文件大小.
                    void setFileSizeMax(long fileSizeMax) 设置单个文件上传大小 .
                    void  setSizeMax(long sizeMax) 设置总文件上传大小 .
            5.解决上传文件中文名称乱码.
                    setHeaderEncoding("utf-8");
                    注意:如果使用reqeust.setCharacterEncoding("utf-8")也可以,但不建议使用。
      其他文件类知识还在学习中。
  • 相关阅读:
    Kubernetes(k8s)中namespace的作用、反向代理访问k8s中的应用、k8s监控服务heapster
    Kubernetes(k8s)中dashboard的部署。
    Kubernetes(k8s)中Pod资源的健康检查
    Kubernetes(k8s)安装dns附件组件以及使用
    Kubernetes(k8s)的deployment资源
    Kubernetes(k8s)的Service资源
    Kubernetes(k8s)的RC(Replication Controller)副本控制器
    Kubernetes(k8s)常用资源的使用、Pod的常用操作
    简易图书管理系统(主要是jsp+servlet的练习),基于jsp+servlet的图书管理系统
    js 提取 sql 条件 表名 limit
  • 原文地址:https://www.cnblogs.com/20183711PYD/p/12722595.html
Copyright © 2020-2023  润新知