SSM(1)-SSM整合思想

什么是SSM?

  SSM(Spring+SpringMVC+MyBatis)就是由Spring、SpringMVC、MyBatis三个开源框架整合而成的框架集,常作为数据源较简单的web项目的框架。

    其中,

    Spring是一个轻量级的控制反转(IoC)和面向切面(AOP)的容器框架。

    SpringMVC分离了控制器、模型对象、分派器以及处理程序对象的角色,这种分离让它们更容易进行定制。

    MyBatis是一个支持普通SQL查询,存储过程和高级映射的优秀持久层框架。


SSM整合思想:把各自的对象交给不同的容器管理。有两个容器:SpringMVC和Spring的容器。

  1、SpringMVC是视图层(UI)的框架,把视图使用的对象交给SpringMVC容器管理,放在SpringMVC的配置文件中。

    1)处理器对象(Controller);

    2)注册组件扫描器<context:component-scan base-package="Controller注解所在的包名"/>;

    3)注册视图解析器:InternalResourceViewResolver,配置前缀和后缀;

    4)注册注解驱动:<mvc:annotation-driven>;

    5)注册处理器的映射器,注册处理器的适配器(可不配置)


  2、Spring管理业务层和持久层的对象(Service和dao),这些对象放在Spring的配置文件中,交给Spring的容器管理。

    1)Service对象交给Spring,使用@Service注解。

       <context:component-scan base-package="Service注解所在的包名"/>;

    2)Dao对象交给Spring,MyBatis对象交给Spring。

        a)数据源DataSource:c3p0,dbcp;

        b)注册SqlSessionFactoryBean,目的是创建SqlSessionFactory;

        c)注册动态代理扫描器,目的是创建Dao接口的动态代理对象,即Dao层的对象;

    3)把事务管理交给Spring。

        a)使用注解处理事务;

        b)使用AspectJ的AOP在配置文件中管理事务


Spring容器和SpringMVC容器的关系:

    Spring是SpringMVC的父容器。

    这里的父子关系并不是继承关系的父子关系,而是在SpringMVC容器(子容器)中可以知道Spring容器(父容器)的存在。子容器可以访问父容器,而父容器不能访问子容器。


SSM整合的配置文件:

  1)SpringMVC的配置文件,文件名是自定义的,springmvc.xml,dispatcherServlet.xml;

  2)Spring的配置文件,文件名是自定义的,applicationContext.xml

  3)MyBatis的主配置文件,配置别名和SQL映射文件的位置;

  4)SQL映射文件,写SQL语句的;

  5)数据库属性配置文件,例如:jdbc.properties;

  6)web.xml

      a)注册SpringMVC的中央调度器:作用是接收请求,在启动的时候创建SpringMVC容器,读取SpringMVC的配置文件;

      b)注册Spring的监听器ContextLoadListener,在启动的时候创建Spring的容器,读取Spring的配置文件;

      c)注册字符集过滤器,解决POST请求的乱码问题。



开发步骤:

  1、建表;

  2、创建动态web应用;

  3、重点:在Web.xml文件中注册SpringMVC的中央调度器,Spring的监听器,字符集过滤器;

  4、建包:实体类包,Service包,Controller包。就知道程序的组织结构;

  5、写配置文件:

      1)SpringMVC,Spring;

      2)当写Dao的时候就可以写SQL映射问价和MyBatis的主配置文件。

  6、写代码:Dao、Service、Controller的代码;

  7、定义请求页面;

  8、定义处理结果页面;

  9、定义事务;


版权声明:本文为weixin_39082031原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。