SSM框架整合简介

SSM整合

1.SSM框架意义

    1.职责

        1.Spring  -> 容器,提供一些服务(事务控制)

            1.负责对象的创建和对象间依赖关系 -> ioc

            2.对事务进行统一的控制

        2.SpringMVC -> MVC框架,用于处理用户的请求,并给出响应 ->  web层   对servlet的包装

        3.Mybatis  -> 数据持久层的框架,将数据保存到数据库中 ->  dao层   对jdbc的包装

    2.整合

        1.Spring和SpringMVC整合 ->  天生和spring融合 ->  对象的创建和依赖

        2.Spring和Mybatis整合   ->

            1.Mybatis的事务控制权交给spring来统一处理

            2.负责mapper对象的创建->SqlSession创建->SqlSessionFactory->数据源

    3.开源框架  ->  mybatis

        1.单表操作(crud)    ->  mybatis-mapper、mybatis-plus

        2.分页  ->  pageheper  ->  mybatis插件 ->  拦截sql语句

2.SM整合

    1.整合mybatis:->核心:将sqlsessionfactory交给spring

        1.web配置文件中配置spring监听器

<context-param>

    <param-name>contextConfigLocation</param-name>

    <param-value>classpath:spring.xml</param-value>

</context-param>

<listener>

    <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>

</listener>

    2.配置数据源

<bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close">

    <property name="driverClassName" value="com.mysql.jdbc.Driver" />

    <property name="url"

          value="jdbc:mysql://localhost:3306/pomeloschool?autoReconnect=true&amp;useUnicode=true" />

    <property name="username" value="root" />

    <property name="password" value="4682135" />

</bean>

    3.创建sqlsessionfactory

  <!-- spring代理sqlsessionfactory -->

<bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">

<!-- 加载mybatis配置文件,必须有,里面的内容可以为空. -->

<!-- 有关mybatis的特性配置可以写在该文件中,比如插件,setting属性等 -->

<property name="configLocation" value="classpath:mybatis.xml" />

<!-- 引用连接池 -->

<property name="dataSource" ref="dataSource" />

<!-- 指定mapper文件位置,当不指定时mapper映射文件默认与接口在一个包下 -->

<property name="mapperLocations" value="classpath:model/dao/*.xml" />

 </bean>

 

 

       

     4.注入SqlSessionTemplate

<bean id="sqlSessionTemplate" class="org.mybatis.spring.SqlSessionTemplate">

    <constructor-arg name="sqlSessionFactory" ref="sqlSessionFactory" />

</bean>  

     [5.Mybatissqlsessionfactory交给spring]-可选

<bean class="org.mybatis.spring.mapper.MapperScannerConfigurer">

    <property name="sqlSessionFactoryBeanName" value="sqlSessionFactory"></property>

    <property name="basePackage" value="model.dao"></property>

<!-- basePackage所在的property的作用:model.dao包中所有的接口产生与之对应的动态代理对象(对象名就是接口名的首写改小字母) -->

</bean>

 

3.整合mvc

    将MVC加入项目即可

        1.jar包

        2.配置

            配置视图解析器

org.springframework.web.servlet.view.InternalResourceViewResolver

        3.mvc基础配置

<mvc:annotation-driven></mvc:annotation-driven>

 

        4.注解扫描器放入springioc中   

<context:component-scan base-package="控制器所在包"></context:component-scan>

    controller层装配使用全注解形式,否则一会注解一会配置容易冲突

    在controller中注入的属性一般都是service层的类 所以可以使用@Autowired

加上此注解以后,只需要再ioc中配置一个service的bean,而不需要ref装配给controller

此外最好再加上一个@Qualifier("service的id")按名字装配更加准确

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值