A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

今天我们讲了简单的ssm框架的整合,要大家整理一下:
1.Mybatis和Spring框架整合要如何配置?
2.SpringMVC和Spring框架整合要如何配置?
3.SSM框架的简单整合要如何配置?有什么需要注意的地方?

2 个回复

倒序浏览
今天我们讲了简单的ssm框架的整合,要大家整理一下:
1.Mybatis和Spring框架整合要如何配置?
applicationContext.xml:
<!--配置连接池-->
        <bean id="dataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource">
                <property name="driverClass" value="com.mysql.jdbc.Driver"/>
                <property name="jdbcUrl" value="jdbc:mysql:///ssm"/>
                <property name="user" value="root"/>
                <property name="password" value="root"/>
        </bean>

<!-- 配置SqlSession的工厂 -->
        <bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">
                <property name="dataSource" ref="dataSource" />
        </bean>

<!-- 配置扫描dao的包 -->
        <bean id="mapperScanner" class="org.mybatis.spring.mapper.MapperScannerConfigurer">
                <property name="basePackage" value="cn.itcast.dao"/>
        </bean>

<!--配置事务管理器-->
<bean id="transactionManager" class="org.springframework.jdbc.datasource.DataSourceTransactionManager">
        <property name="dataSource" ref="dataSource" />
    </bean>

<!--配置事务通知-->
        <tx:advice id="txAdvice" transaction-manager="transactionManager">
                <tx:attributes>
                    <tx:method name="find*" read-only="true"/>
                    <tx:method name="*" isolation="DEFAULT"/>
                </tx:attributes>
        </tx:advice>

<!--配置AOP增强-->
        <aop:config>
                <aop:advisor advice-ref="txAdvice" pointcut="execution(* cn.itcast.service.impl.*ServiceImpl.*(..))"/>

        </aop:config>

2.SpringMVC和Spring框架整合要如何配置?
applicationContext.xml:
<context:component-scan base-package="cn.itcast">
        <!-- 配置要忽略的注解 -->
        <context:exclude-filter type="annotation" expression="org.springframework.stereotype.Controller"/>
</context:component-scan>

web.xml:
<!-- 配置Spring的监听器 -->
<listener>
        <listener-class>org.springframework.web.context.ContextLoaderListener</listenerclass>
</listener>

<!-- 配置加载类路径的配置文件 -->
<context-param>
        <param-name>contextConfigLocation</param-name>
        <param-value>classpath:applicationContext.xml</param-value>
</context-param>

<!--配置前端控制器-->
<servlet>
            <servlet-name>dispatcherServlet</servlet-name>
            <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
            <!--加载springmvc.xml配置文件-->
            <init-param>
              <param-name>contextConfigLocation</param-name>
              <param-value>classpath:springmvc.xml</param-value>
            </init-param>
            <!--启动服务器,创建该servlet-->
            <load-on-startup>1</load-on-startup>
</servlet>

<servlet-mapping>
            <servlet-name>dispatcherServlet</servlet-name>
            <url-pattern>/</url-pattern>
</servlet-mapping>

springmvc.xml:
<!--开启注解扫描,只扫描Controller注解-->
<context:component-scan base-package="cn.itcast">
        <context:include-filter type="annotation" expression="org.springframework.stereotype.Controller" />
</context:component-scan>

<!--配置的视图解析器对象-->
<bean id="internalResourceViewResolver" class="org.springframework.web.servlet.view.InternalResourceViewResolver">
                <property name="prefix" value="/WEB-INF/pages/"/>
                <property name="suffix" value=".jsp"/>
</bean>

<!--过滤静态资源-->
            <mvc:resources location="/css/" mapping="/css/**" />
            <mvc:resources location="/images/" mapping="/images/**" />
            <mvc:resources location="/js/" mapping="/js/**" />

<!--开启SpringMVC注解的支持-->
            mvc:annotation-driven/

3.SSM框架的简单整合要如何配置?有什么需要注意的地方?
applicationContext.xml:
<context:component-scan base-package="cn.itcast" >
        <!--配置哪些注解不扫描-->
        <context:exclude-filter type="annotation" expression="org.springframework.stereotype.Controller" />
    </context:component-scan>

<!--配置连接池-->
    <bean id="dataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource">
        <property name="driverClass" value="com.mysql.jdbc.Driver"/>
        <property name="jdbcUrl" value="jdbc:mysql:///ssm"/>
        <property name="user" value="root"/>
        <property name="password" value="root"/>
    </bean>

<!--配置SqlSessionFactory工厂-->
    <bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">
        <property name="dataSource" ref="dataSource" />
    </bean>

<!--配置AccountDao接口所在包-->
    <bean id="mapperScanner" class="org.mybatis.spring.mapper.MapperScannerConfigurer">
        <property name="basePackage" value="cn.itcast.dao"/>
    </bean>

<!--配置事务管理器-->
    <bean id="transactionManager" class="org.springframework.jdbc.datasource.DataSourceTransactionManager">
        <property name="dataSource" ref="dataSource" />
    </bean>

<!--配置事务通知-->
    <tx:advice id="txAdvice" transaction-manager="transactionManager">
        <tx:attributes>
            <tx:method name="find*" read-only="true"/>
            <tx:method name="*" isolation="DEFAULT"/>
        </tx:attributes>
    </tx:advice>

<!--配置AOP增强-->
    <aop:config>
        <aop:advisor advice-ref="txAdvice" pointcut="execution(* cn.itcast.service.impl.*ServiceImpl.*(..))"/>
    </aop:config>

web.xml:
<!--设置配置文件的路径-->
  <context-param>
    <param-name>contextConfigLocation</param-name>
    <param-value>classpath:applicationContext.xml</param-value>
  </context-param>

  <!--解决中文乱码的过滤器-->
  <filter>
    <filter-name>characterEncodingFilter</filter-name>
    <filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>
    <init-param>
      <param-name>encoding</param-name>
      <param-value>UTF-8</param-value>
    </init-param>
  </filter>

  <filter-mapping>
    <filter-name>characterEncodingFilter</filter-name>
    <url-pattern>/*</url-pattern>
  </filter-mapping>

  <!--配置Spring的监听器,默认只加载WEB-INF目录下的applicationContext.xml配置文件-->
  <listener>
    <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
  </listener>

  <!--配置前端控制器-->
  <servlet>
    <servlet-name>dispatcherServlet</servlet-name>
    <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
    <!--加载springmvc.xml配置文件-->
    <init-param>
      <param-name>contextConfigLocation</param-name>
      <param-value>classpath:springmvc.xml</param-value>
    </init-param>
    <!--启动服务器,创建该servlet-->
    <load-on-startup>1</load-on-startup>
  </servlet>

  <servlet-mapping>
    <servlet-name>dispatcherServlet</servlet-name>
    <url-pattern>/</url-pattern>
  </servlet-mapping>

springmvc.xml:
<!--开启注解扫描,只扫描Controller注解-->
    <context:component-scan base-package="cn.itcast">
        <context:include-filter type="annotation" expression="org.springframework.stereotype.Controller" />
    /context:component-scan

<!--配置的视图解析器对象-->
    <bean id="internalResourceViewResolver" class="org.springframework.web.servlet.view.InternalResourceViewResolver">
        <property name="prefix" value="/WEB-INF/pages/"/>
        <property name="suffix" value=".jsp"/>
    </bean>

<!--过滤静态资源-->
    <mvc:resources location="/css/" mapping="/css/**" />
    <mvc:resources location="/images/" mapping="/images/**" />
    <mvc:resources location="/js/" mapping="/js/**" />

<!--开启SpringMVC注解的支持-->
    mvc:annotation-driven/

注意的地方:由于SqlMapConfifig.xml配置文件中的内容配置到applicationContext.xml配置文件中,所以不再需要SqlMapConfig.xml
回复 使用道具 举报
1.Mybatis和Spring框架整合要如何配置?
答:
        直接在applicationContext.xml配置Mybatis框架的配置信息:
                配置C3P0的连接处对象(即配置数据源:DriverManagerDataSource);
                配置sqlsession的工厂,并指定数据源(SqlSessionFactoryBean);
                配置映射器,即dao对象(MapperScannerConfigurer);
                配置声明式事务:
                        配置事务控制器(DataSourceTransactionManager);
                        配置事务通知;
                        配置切入点与通知的关联;
       
2.SpringMVC和Spring框架整合要如何配置?
答:
        spring框架配置:
                创建并配置applicationContext.xml文件:
                        配置包扫描(不扫描表现层的包);
        springMVC框架配置:
                配置web.xml文件:
                        配置前端控制器(服务器启动时,需加载spring.xml文件);
                        配置中文乱码过滤器;
                创建并配置spring.xml文件:
                        导入约束;
                        配置包扫描(只扫描表现层的包);
                        配置视图解析器;
                        配置静态资源不拦截;
                        开启springMVC注解支持;
        整合:
                配置web.xml文件:
                        配置spring监听器;(ContextLoaderListener)
                        配置加载类路径的配置文件(applicationContext.xml)
       

3.SSM框架的简单整合要如何配置?有什么需要注意的地方?
答:
        配置:
                Mybatis和Spring框架整合:
                        将Mybatis的配置文件,配置在spring的配置文件中:
                                配置数据源、sqlsession工厂对象、dao代理对象、声明式事务;
                SpringMVC和Spring框架整合:
                        配置web.xml文件,加载spring的配置文件:
                                配置spring的监听器、需要加载的配置文件路径;
        注意:
                在整合三个框架之前,建议先单独测各框架是否运行正常;
                配置包扫描时,spring的配置文件无需扫描实现层的包,而springmvc的配置文件只需扫描实现层的包;
                整合需要配置大量的配置文件,所以配置文件的标签、属性和约束,需格式正确;
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马