SSM+Redis整合

SSM+Redis框架的搭建
    注意:
    1.SpringMVC和Spring
        不需要什么特殊的配置就可以结合

    2.MyBatis和Spring
        1)需要引入额外的jar包:mybatis-spring-1.2.2.jar
        2)配置数据源
        3)把MyBatis中的SqlSessionFactory配置给Spring管理
        4)在spring中配置需要扫描的MyBatis映射接口所在包的位置

    3.Spring中配置SqlSessionFactory
        1)可以在MyBatis的mybatis-config.xml中把MyBatis的信息配好,然后再让spring读取这个mybatis-config.xml文件
        2)可以删除mybatis-config.xml文件,然后MyBatis的信息都配置到Spring中

    4.spring配置文件中的重要信息
        可以写在外部的资源文件中,然后再使用spring的标签读出来使用
        例如:
        <context:property-placeholder location="classpath:db.properties"/>
        取值使用的形式:${key}
        ${driverClassName}
    
    5.事务配置
        1)事务的开启和提交需要配置在service层方法的俩端
        2)配置事务需要三步
            配置事务管理器
                使用jdbc的事务管理器
            配置事务拦截器
                使用tx前缀的标签
            spring的aop配置(把事务管理织入到指定的切入点)
                使用aop前缀的标签
    
    6.日志配置
        1)使用之前MyBatis的日志文件即可
        2)在log4j.properties文件中可以屏蔽掉spring日志(输出太多了...)
            #ALL DEBUG INFO WARM ERROR FATAL OFF
            log4j.logger.org.springframework = ERROR

    7.web.xml文件配置
        1)配置spring读取的配置文件
        2)配置编码过滤
        3)配置前端控制器
    
    8.SpringMVC的容器和Spring容器的关系
        1)使用xml或者注解进行配置,springMVC或者spring读取配置信息之后,会把配置的对象(就是spring中的bean)放到容器中进行管理
        2)服务器启动的时候,SpirngMVC中的前端控制器会读取配置文件,把相关配置的对象放到自己产生的容器中进行管理(需要在web.xml配置)
        3)服务器启动的时候spring也会读取配置文件,把相关配置的对象放到自己产生的容器中进行管理(需要在web.xml配置)
        4)SpirngMVC创建容器中所管理的Bean一般是只对SpringMVC有效,如Controller、HandlerMapping、HandlerAdapter等等(因为它一般只读取SpringMVC的配置文件)
        5)Spirng创建容器中所管理的Bean一般是对于整个应用程序共享的,一般如DAO层、Service层Bean。(因为它一般只读取service层和dao层的配置文件)
        6)SpirngMVC创建的容器 【继承了】 Spirng创建的容器
        7)子容器可以从父容器中拿出bean来使用,但是父容器不能从子容器中拿bean来使用。所以在Controller中可以注入service层的实现类对象,Controller在SpringMVC创建的容器中,service是在Spring创建的容器中。


       9、结合redis

    方式1:Redis和mybatis结合
    注意:Jedis是用来操作Redis的
    
    mybatis缓存分为一级缓存和二级缓存

    一级缓存,又叫本地缓存,是PerpetualCache类型的永久缓存,保存在执行器中(BaseExecutor),而执行器又在SqlSession(DefaultSqlSession)中,所以一级缓存的生命周期与SqlSession是相同的。

    二级缓存,又叫自定义缓存,实现了Cache接口的类都可以作为二级缓存,所以可配置如encache等的第三方缓存。二级缓存以namespace名称空间为其唯一标识,被保存在Configuration核心配置对象中。

    所以我们可以自定义缓存类,实现Mybatis提供的缓存接口Cache,其中的方法使用Jedis来实现,然后把这个缓存实现类配置为Mybatis的二级缓存提供者即可

    方式2:Redis和Spring结合(同时还要加上Mybatis)
    主要依赖的核心jar为:
        spring-data-redis-1.x.x.RELEASE.jar
    注意:
        spring3.2.4需要结合使用spring-data-redis-1.6.2.RELEASE.jar
        spring4.3.3可以结合使用spring-data-redis-1.6.2.RELEASE.jar或者更高的版本

    从3.1开始,spring引入了对Cache的支持。当我们在调用一个方法时会把该方法参数和返回结果作为一个键值对存放在缓存中,等到下次利用同样的参数来调用该方法时将不再执行该方法,而是直接从缓存中获取结果进行返回。
        使用Spring Cache需要我们做的事情:
            配置Spring对Cache的支持
            配置jedis工厂、redis模板、cache管理器

            声明哪些方法要使用缓存 @Cacheable @CacheEvict  )@CachePut


    10.具体实例参照SSM项目

     http://download.csdn.net/detail/jerrydzan/9908772





猜你喜欢

转载自blog.csdn.net/jerryDzan/article/details/76020989