最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

SpringBoot設置Session失效時間的解決方案

 更新時間:2024年05月23日 10:58:12   作者:一覺睡到小時候  
當過期時間是大于1分鐘的時候是沒有什么問題的,但是如果設置過期時間小于1分鐘,就會失效,這篇文章主要介紹了SpringBoot設置Session失效時間的解決方案,需要的朋友可以參考下

springboot的yml文件中設置session的過期時間

 #Session超時時間設置,單位是秒,默認是30分鐘
  servlet:
    session:
      timeout: 3600s

當過期時間是大于1分鐘的時候是沒有什么問題的,但是如果設置過期時間小于1分鐘,就會失效。

  servlet:
    session:
      timeout: 10

因為SpringBoot在TomcatServletWebServerFactory為session的過期時間做了優(yōu)化。

Session的配置configureSession

private void configureSession(Context context) {
        long sessionTimeout = this.getSessionTimeoutInMinutes();
        context.setSessionTimeout((int)sessionTimeout);
        Boolean httpOnly = this.getSession().getCookie().getHttpOnly();
        if (httpOnly != null) {
            context.setUseHttpOnly(httpOnly);
        }
        if (this.getSession().isPersistent()) {
            Manager manager = context.getManager();
            if (manager == null) {
                manager = new StandardManager();
                context.setManager((Manager)manager);
            }
            this.configurePersistSession((Manager)manager);
        } else {
            context.addLifecycleListener(new TomcatServletWebServerFactory.DisablePersistSessionListener());
        }
    }

我們看到long sessionTimeout = this.getSessionTimeoutInMinutes();過期時間取自getSessionTimeoutInMinutes方法。

    private long getSessionTimeoutInMinutes() {
        Duration sessionTimeout = this.getSession().getTimeout();
        return this.isZeroOrLess(sessionTimeout) ? 0L : Math.max(sessionTimeout.toMinutes(), 1L);
    }

在這里對sessionTimeout 進行判斷,首先判斷是否為0或者更少isZeroOrLess方法

    private boolean isZeroOrLess(Duration sessionTimeout) {
        return sessionTimeout == null || sessionTimeout.isNegative() || sessionTimeout.isZero();
    }

sessionTimeout轉(zhuǎn)換為分鐘sessionTimeout.toMinutes()

    public long toMinutes() {
        return seconds / SECONDS_PER_MINUTE;
    }
    /**
     * Seconds per minute.
     */
    static final int SECONDS_PER_MINUTE = 60;

將轉(zhuǎn)換后的值和1L進行比較

    public static long max(long a, long b) {
        return (a >= b) ? a : b;
    }

如果該值小于1分鐘,則按1分鐘算。
最后返回的是三目運算的結果。

到此這篇關于SpringBoot設置Session失效時間的文章就介紹到這了,更多相關SpringBoot設置Session失效時間內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

  • SpringBoot集成ip2region實現(xiàn)ip白名單的代碼示例

    SpringBoot集成ip2region實現(xiàn)ip白名單的代碼示例

    ip2region v2.0 - 是一個離線IP地址定位庫和IP定位數(shù)據(jù)管理框架,10微秒級別的查詢效率,提供了眾多主流編程語言的 xdb 數(shù)據(jù)生成和查詢客戶端實現(xiàn),本文介紹了SpringBoot集成ip2region實現(xiàn)ip白名單的代碼工程,需要的朋友可以參考下
    2024-08-08
  • 使用BigDecimal除法后保留兩位小數(shù)

    使用BigDecimal除法后保留兩位小數(shù)

    這篇文章主要介紹了使用BigDecimal除法后保留兩位小數(shù)方式,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-06-06
  • 詳解Java中static關鍵字和內(nèi)部類的使用

    詳解Java中static關鍵字和內(nèi)部類的使用

    這篇文章主要為大家詳細介紹了Java中static關鍵字和內(nèi)部類的使用,文中的示例代碼講解詳細,感興趣的小伙伴可以跟隨小編一起學習一下
    2022-08-08
  • 詳解spring mvc對異步請求的處理

    詳解spring mvc對異步請求的處理

    spring mvc3.2及以上版本增加了對請求的異步處理,是在servlet3的基礎上進行封裝的,有興趣的可以了解一下。
    2017-01-01
  • IntelliJ IDEA 警告“Immutable object is modified”的問題排查與解決方法

    IntelliJ IDEA 警告“Immutable object is&nbs

    IntelliJ IDEA 作為業(yè)界領先的集成開發(fā)環(huán)境,憑借其強大的靜態(tài)代碼分析引擎,能夠在編譯階段就敏銳地捕捉到此類潛在風險,并彈出 Immutable object is modified警告,下面我們就來看看如何解決吧
    2026-03-03
  • Windows10安裝IDEA 2020.1.2的方法步驟

    Windows10安裝IDEA 2020.1.2的方法步驟

    這篇文章主要介紹了Windows10安裝IDEA 2020.1.2的方法步驟,文中通過圖文介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2020-08-08
  • java實現(xiàn)上傳圖片尺寸修改和質(zhì)量壓縮

    java實現(xiàn)上傳圖片尺寸修改和質(zhì)量壓縮

    這篇文章主要為大家詳細介紹了java實現(xiàn)上傳圖片尺寸修改和質(zhì)量壓縮,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-04-04
  • Maven POM文件配置打造高效項目管理的完整指南

    Maven POM文件配置打造高效項目管理的完整指南

    文章瀏覽閱讀1.6k次,點贊32次,收藏21次。本文全面解析 Maven 的 POM 文件配置,涵蓋項目信息、依賴管理、構建配置等內(nèi)容。提供清晰示例與注釋,附思維導圖,助你快速掌握 Maven 項目管理。_maven pom
    2025-08-08
  • Spring?Bean名稱不會被代理的命名技巧

    Spring?Bean名稱不會被代理的命名技巧

    Spring Bean一些使用小細節(jié)就是在不斷的源碼探索中逐步發(fā)現(xiàn)的,今天就來和小伙伴們聊一下通過 beanName 的設置,可以讓一個 bean 拒絕被代理
    2023-11-11
  • Springboot新建項目Spring Initializr Error問題及解決

    Springboot新建項目Spring Initializr Error問題及解決

    這篇文章主要介紹了Springboot新建項目Spring Initializr Error問題及解決方案,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2023-11-11

最新評論

丁青县| 正镶白旗| 农安县| 龙门县| 石门县| 巴中市| 榆中县| 扶余县| 新乐市| 新津县| 探索| 江安县| 开阳县| 禹城市| 禹州市| 龙井市| 温宿县| 稻城县| 萝北县| 奉新县| 涞水县| 青州市| 乌苏市| 朝阳市| 罗山县| 达孜县| 屏边| 海宁市| 昭平县| 五原县| 东宁县| 江油市| 随州市| 芷江| 商都县| 揭西县| 大渡口区| 崇文区| 佛学| 和平区| 金华市|