day81 session会话 文件上传

本文详细介绍了Java中的Session概念、生命周期、过期处理、常用方法,以及如何在文件上传中处理重名问题,包括使用FileUtil进行文件命名和ImgUtil管理图片路径。
摘要由CSDN通过智能技术生成

知识点:

        session

        文件上传

Session的生命周期(同一浏览器,无论关闭与否,使用同一个session会话,直到session销毁) - 魔女技术团队 - 博客园 (cnblogs.com)

一   session

        1)session:会话

        在服务器端存储信息

        指客户与服务器的会话

        当用户通过浏览器访问服务器的某个页面时,在服务器开辟一个内存空间session

        每个session 有唯一的id

    

         2)session过期

                关闭浏览器

                session过期

                session销毁

        3)session的常用方法

         1)作用域

                setAttribute()

                getAttribute()

                removeAttribute()

          2)其他方法

                session.setMaxInactiveInterval(int time);

                                设置session有效时间

                                单位为‘’秒‘’ 默认有效时间30min

                 session.invalidate(); 

                                  销毁session

                getId():

                                获取sessionId值

        4)session的特点

在/c控制器中设置Cookie值,并添加到响应对象中,响应对象带着这些cookie中定向到index页面

可以看到index页面中JSESSIONID值被系统服务器默认覆盖了,JSESSIONID123的value值

变成了最后设置的cookie2的属性值。

本质上还是因为cookie存值是以map类型的键值对,无序且不可重复

         5) sessionId在销毁时的变化     

用户退出登录,也就是销毁服务器的对应生成session内存,再次访问服务器时sessionId

发生改变

                                                                用户已登录时

用户已登录时
                                                           用户退出登录销毁session时 
用户退出登录销毁session时

 二  文件上传

        前端显示界面         上传文件在servlet中实现代码 

        文件上传如果重名时,会自动覆盖已存入磁盘的文件。所以需要重新改名,自建一个util类

实现对扩展名的提取和随机生成不同的名称。FileUtil

public  class FileUtil {


    private FileUtil(){};

    public  static String getFileType(String fileName){
            return fileName.substring(fileName.lastIndexOf('.'));
    }

    public static String getFileName(){
        UUID uuid = UUID.randomUUID();
        return  uuid.toString().replace("-","");
    }
}

在磁盘上储存文件时,将文件路径部署到TomCat中

         将图片文件的存贮路径和浏览路径写成常量值。封装到 ImgUtil

public interface ImgUtil {
    String GAT_PATH = "http://localhost:8080/imgs/";
    String SAVE_PATH = "E:\\imgs\\";
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值