亚洲中字慕日产2020,大陆极品少妇内射AAAAAA,无码av大香线蕉伊人久久,久久精品国产亚洲av麻豆网站

資訊專欄INFORMATION COLUMN

Web應(yīng)用全棧之旅-Spring篇(一)分布式Session

yy13818512006 / 1275人閱讀

摘要:一分布式的實現(xiàn)在微服務(wù)架構(gòu)下,需要支持分布式,分布式可以通過來實現(xiàn),也可以通過數(shù)據(jù)庫來實現(xiàn),本文介紹實現(xiàn)。二安裝下載地址選擇對應(yīng)的版本安裝。進(jìn)入安裝目錄啟動。站點微信公眾號加入知識星球,參與討論,更多實戰(zhàn)代碼分享

一、分布式Session的Redis實現(xiàn)

在微服務(wù)架構(gòu)下,需要支持分布式Session,分布式Session可以通過Redis來實現(xiàn),也可以通過數(shù)據(jù)庫來實現(xiàn),本文介紹Redis實現(xiàn)。

二、安裝Redis

下載地址:https://github.com/MSOpenTech...
選擇對應(yīng)的版本安裝。

進(jìn)入安裝目錄啟動Redis。

三、pom文件
        
            org.springframework.boot
            spring-boot-starter-data-redis
        
        
        
            org.springframework.session
            spring-session-data-redis
        

        
            org.apache.commons
            commons-pool2
        
四、yml配置

yml配置如下:

# Redis服務(wù)器地址
spring.redis.host=localhost
# Redis服務(wù)器連接端口
spring.redis.port=6379
五、Config配置

config配置如下:

@Configuration
@EnableRedisHttpSession(maxInactiveIntervalInSeconds = 86400 * 30)
public class SessionConfig {

}
六、登陸后設(shè)置Session

登陸成功后設(shè)置Session信息,代碼如下:

@Component
@RestController
public class LoginController {

    @RequestMapping("/login")
    public String login(@RequestBody String userId, HttpSession  session) throws Exception {
        session.setAttribute(Constants.SESSION_USER_ID, userId);
        return "Login success.";
    }
}
七、Session鑒權(quán)過濾器

沒有成功登陸并設(shè)置Session,需要跳轉(zhuǎn)到錯誤頁面, 代碼實例如下:

@Configuration
public class SessionFilter extends OncePerRequestFilter {

    @Override
    protected void doFilterInternal(HttpServletRequest request, HttpServletResponse response, FilterChain filterChain)
            throws ServletException, IOException {

        if (isNeedAuth(request)) {
            Object userIdObject = request.getSession().getAttribute(Constants.SESSION_USER_ID);
            if (null == userIdObject) {
                response.sendRedirect("/errorPage");
            }
        }

        filterChain.doFilter(request, response);
    }
}

以上為實現(xiàn)Redis Session的所有步驟,完整實例代碼掃碼加入微信公眾號并回復(fù):webfullstack,獲取倉庫地址。

end.

站點: http://javashizhan.com/

微信公眾號:

加入知識星球,參與討論,更多實戰(zhàn)代碼分享!
https://t.zsxq.com/RNzfi2j

文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://www.ezyhdfw.cn/yun/76051.html

相關(guān)文章

  • Web全棧應(yīng)用之旅-啟程

    摘要:但能拷貝圖粘貼后不失真通常是收費富文本編輯器才具備的能力。是否支持編程語言高亮,例如按,語言高亮是否支持?jǐn)?shù)學(xué)公式等等因此選擇了兩款富文本編輯器,支持截屏粘貼,當(dāng)做跟蹤系統(tǒng)時這個功能特別有用。 一、Web應(yīng)用技術(shù)棧 在開發(fā)Web應(yīng)用時,通常會使用到以下技術(shù)棧: showImg(https://segmentfault.com/img/bVbwceG);對應(yīng)這些技術(shù)棧都已有相應(yīng)的開源產(chǎn)品...

    longmon 評論0 收藏0
  • Web應(yīng)用全棧之旅-Spring(二)集成mybatis

    摘要:五中調(diào)用以上為集成的所有步驟,完整實例代碼掃碼加入微信公眾號并回復(fù),獲取倉庫地址。站點微信公眾號加入知識星球,參與討論,更多實戰(zhàn)代碼分享 一、pom文件 引入mybatis org.mybatis.spring.boot mybatis-spring-boot-starter 2.1.0 ...

    baishancloud 評論0 收藏0
  • Web全棧應(yīng)用之旅-基礎(chǔ))前后端接口

    摘要:一前后端接口設(shè)計前后端接口設(shè)計主要考慮以下幾點二接口內(nèi)容接口內(nèi)容包括鑒權(quán)信息,如用于身份識別的。公共信息,例如用戶,項目等需要傳給后端的公共數(shù)據(jù)。 一、前后端接口設(shè)計 前后端接口設(shè)計主要考慮以下幾點: showImg(https://segmentfault.com/img/bVbwc4u?w=2095&h=891); 二、接口內(nèi)容 接口內(nèi)容包括: 鑒權(quán)信息,如用于身份識別的t...

    lindroid 評論0 收藏0
  • Web全棧應(yīng)用之旅-基礎(chǔ)(二)異常設(shè)計

    摘要:異常堆棧開發(fā)過程中,不可避免的會有未考慮的異常場景,堆棧信息可以幫助快速解決故障。異常日志有時候需要借助異常堆棧信息定位錯誤原因,而用戶未必能記得和反饋錯誤堆棧信息,此時要么是自行復(fù)現(xiàn)錯誤來定位,要么是通過歷史錯誤日志定位。 一、異常設(shè)計 異常設(shè)計主要考慮以下方面: showImg(https://segmentfault.com/img/bVbwdua?w=1624&h=867);...

    MudOnTire 評論0 收藏0

發(fā)表評論

0條評論

閱讀需要支付1元查看
<