• 单点登录


      之前说了单点登录系统的原理,这篇就来点硬货,说下单点登录的一个系统是如何搭建的。

     架构分析

        表现层:提供手机客户端,或其他系统的调用

          表现层的存在意义就是,提供给所有非本系统的其他系统进行登录。具体实现的思路就是,编写一个登录的接口(本系统使用RESTful风格的),让需要该服务的其他系统通过接口提交数据,并获得相应的返回。

        服务层:系统内部的调用

          这个比较简单了,内部的所有登录,查询的操作都是通过服务层去实现的。

        我们本次的搭建使用maven实现的,如果使用其他技术,请自行从网上查找其他资料

        服务层

        首先是我们的服务层,我们的服务层中总共只有三个子项目:分别是聚合工程的父工程(taotao-sso)还有就是两个子工程,负责提供接口和依赖的接口工程(taotao-sso-interface)和负责真正的业务处理的业务处理工程(taotao-sso-service)。跟其他聚合工程的的服务层相比,它的里面是没有实体层(pojo)和持久层(mapper)的。因为项目中一般所有的数据库表都是有一个专门的团队去维护的(数据库开发工程师),目的是保证数据的安全性、读取速度等。所以对应的实体层(pojo)和持久层(mapper)的编写一般也都是由他们来进行完成的。

        而我们的单点登录系统肯定是要使用实体和持久层的,这个时候,我们需要依赖后台的pojo和mapper就可以了。

         表现层

        表现层主要提供接口给别的系统用,就是一个普通的表现层web工程。

     搭建

      搭建taotao-sso

       创建工程

        创建聚合工程父工程

        

        

        

        创建聚合工程子工程-interface

        

        

        

        创建聚合工程子工程-service

         

        

       加入依赖(就是pom.xml文件中的代码)

        这里依赖的那个parent的包下的xml文件也一并提供下,建工程的过程就不写了,参见taotao-sso

         View Code

        taotao-sso

         View Code

        taotao-sso-interface

         View Code

        taotao-sso-service

         View Code

       加入配置文件

        在taotao-service工程中,创建如图示目录和文件:

        

        其中的各个文件的配置:

        SqlMapConfig.xml

         View Code

        jdbc.properties

         View Code

        jedis.properties

         View Code

        web.xml

         View Code

        applicationContext-dao.xml

         View Code

        applicationContext-jedis.xml

         View Code

        对了,还需要引入之前的redis中写的工具类的包。其实大家可以试着自己写一下,很简单的不过我还是提供下代码:建立的包结构如下:  

        

        JedisClusterUtiles.java

         View Code

        JedisPoolUtils.java

         View Code

        RedisUtils.java

         View Code

        applicationContext-serivce.xml

         View Code

        applicationContext-trans.xml

         View Code

      搭建taotao-sso-web

       创建工程

        

        

        

       加入依赖

        pom.xml

         View Code

       加入配置文件

        web.xml

         View Code

      springmvc.xml

         View Code

      

  • 相关阅读:
    转ANYTAO的学习方法
    第一次写文章
    分享一个有趣的学习方法,欢迎一起探讨如何提高学习兴趣
    SQL基础
    insert into 后获得自动插入的id(select @@identity)
    如何向ASP.NET Web 服务器控件添加客户端脚本事件
    关键字using的主要用途
    网页设计师必备的10个CSS技巧
    DataSet与DataReader的区别
    由于系统时间修改导致Oracle启动失败
  • 原文地址:https://www.cnblogs.com/zhangyuhang3/p/6901137.html
Copyright © 2020-2023  润新知