session.setAttribute报错_java string contains方法

session.setAttribute报错_java string contains方法HTTPSession在setAttribute时,保存的对象是否需要序列化?查看StandardSession源码中,在setAttribute()中有如下代码if((manager!=null)&&manager.getDistributable()&&!isAttributeDistributable(name…

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE稳定放心使用

HTTPSession在setAttribute时,保存的对象是否需要序列化?

查看StandardSession源码中,在setAttribute()中有如下代码

 if ((manager != null) && manager.getDistributable() &&
          !isAttributeDistributable(name, value))
            throw new IllegalArgumentException
                (sm.getString("standardSession.setAttribute.iae", name));

 protected boolean isAttributeDistributable(String name, Object value) {
        return value instanceof Serializable;
 }

 manager接口:
	
    /**
     * Return the distributable flag for the sessions supported by
     * this Manager.
     */
    public boolean getDistributable();
	
    /**
     * Set the distributable flag for the sessions supported by this
     * Manager.  If this flag is set, all user data objects added to
     * sessions associated with this manager must implement Serializable.
     *
     * @param distributable The new distributable flag
     */
    public void setDistributable(boolean distributable);

 

在web.xml配置<distributable/>后, manager中的distributable变量为true,在setAttribute时会检查对象是否序列化。

 因此,session中的对象需不需要实现序列化,取决于是否支持分布式session。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/184136.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • (已解决)Unexpected token o in JSON at position 1

    (已解决)Unexpected token o in JSON at position 1讲这个问题之前先普及一下JSON.parse()和JSON.stringify()方面的知识:JSON.parse()方法用于将一个JSON字符串转换为对象,如varstr='{"name":"LeonWu","age":"18"}’JSON.parse(str);//结果为一个Object//age:"18";//name:"LeonWu";

    2022年10月17日
    0
  • D3.js + Canvas 绘制组织结构图

    D3.js + Canvas 绘制组织结构图

    2022年4月2日
    253
  • poetry下载_k8s安装工具

    poetry下载_k8s安装工具介绍Poetry是Python中的依赖管理和打包工具,当然它也可以配置虚拟环境。它允许您声明项目所依赖的库,并为您管理(安装/更新)它们。之前一直使用virtualenvwrapper管理虚拟

    2022年8月7日
    4
  • HashMap的扩容机制—resize()「建议收藏」

    HashMap的扩容机制—resize()「建议收藏」 HashMap的扩容机制—resize()什么时候扩容:当向容器添加元素的时候,会判断当前容器的元素个数,如果大于等于阈值(知道这个阈字怎么念吗?不念fa值,念yu值四声)—即当前数组的长度乘以加载因子的值的时候,就要自动扩容啦。扩容(resize)就是重新计算容量,向HashMap对象里不停的添加元素,而HashMap对象内部的数组无法装载更多的元素时,对象就需要扩大数组的…

    2022年6月15日
    36
  • idea 2022.01.4 mac激活码(JetBrains全家桶)2022.02.23

    (idea 2022.01.4 mac激活码)这是一篇idea技术相关文章,由全栈君为大家提供,主要知识点是关于2021JetBrains全家桶永久激活码的内容IntelliJ2021最新激活注册码,破解教程可免费永久激活,亲测有效,下面是详细链接哦~https://javaforall.net/100143.htmlHCIQ56F36O-eyJsaWN…

    2022年4月1日
    182
  • eclipse配置svn的步骤_如何访问svn地址

    eclipse配置svn的步骤_如何访问svn地址   前提是前面已经配置好http访问svn。接下来,就只需要安装ssl,和配置ssl:   1、SSL安装yuminstallmod_sslopenssl 2、生成证书 cd/etc/pki/tls/privateopensslgenrsa-outmysvn.key1024opensslreq-new-keymysvn.key…

    2022年9月3日
    2

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号