springboot處理session時間週期

在使用springboot中我發現一個特別的問題,在我處理session傳值的時候 我頁面在3分鐘內不做任何操作 那麼我們session傳遞的值沒有了,這個問題一直糾纏了2天多,嘗試了很多方法比如.web.xml這樣的配置一個session週期30分鐘。貌似也不行,我又繼續改代碼?也不行?這是爲什麼?突然變得好迷茫。同樣的都是傳遞session值爲什麼差距就是傳遞的時候會發生這樣一個奇怪的錯誤呢?回過頭我們分析確實是本原因出現了

那麼我們看看是什麼呢?spring1.4後都是基於註解開發

幾乎拋棄了繁瑣了XML配置文件

這麼想是不是感覺哪裏不對了?

既然是通過註解來開發的 那麼爲什麼不通過註解來給我們的session設置生命週期呢?

PS:通過request.getSession().getMaxInactiveInterval()可以查看你的session時間

我此時發現到了我的session週期爲60s,現在我們怎麼解決呢 怎麼通過註解來給我們的session設定時間週期呢?

在我們啓動器中 也就是

public static void main(String[] args) throws Exception{
SpringApplication.run(Application.class, args);

}

這個類中我們在下面添加一個註解:記住

 @Bean
public EmbeddedServletContainerCustomizer containerCustomizer(){
       return new EmbeddedServletContainerCustomizer() {
           @Override
           public void customize(ConfigurableEmbeddedServletContainer container) {
                container.setSessionTimeout(1800);//單位爲S
          }
    };
}

這樣我們的session生命就處理完畢

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章