zoukankan      html  css  js  c++  java
  • SSM整合

    需要对mybatis spring springmvc有一些的了解
    整合介绍:
    需要mybatis-spring整合 然后在加上springmvc就可以

    一:mybatis-spring整合:在前面spring快速复习中有介绍这里做代码演示
    	1.创建ioc容器applicationContext.xml 
    		扫描注解是必要的:这里仅仅扫描service
    		<context:component-scan base-package="com.itheima.service"></context:component-scan>
    	2.开始在容器中注入属性
    

    (重点)3.明确主要目的:为了调用动态代理对象
    次要目的:配置事务管理器
    4.分析动态代理对象的注入容器中 这个类是MapperScannerConfigurer,
    1.必须需要(工厂)属性SqlSessionFactoryBean————会自动寻找(不配置也行)
    2.需要为dao层接口配置动态代理对象注入属性
    5.上面需要SqlSessionFactoryBean所以我们需要提前配置SqlSessionFactoryBean
    bean工厂分析:
    1.需要数据源
    2.需要配置别名(方便书写)
    3.若是映射文件和dao文件路径不一致需要指定路径
    4.因为数据库名称单词间喜欢用下划线分隔 所以需要配置驼峰命名规则 举例:数据库user_id 属性userId可以自动映射
    以下为 将SqlSessionFactoryBean工厂注入容器 代码演示




    				<!--如果映射文件与dao层接口不在同一目录下 需要手动映射-->
    				<!--<property name="mapperLocations" value="classpath:com/itheima/dao/*.xml" ></property>-->
    		
    				<!--需要配置驼峰命名规则-->
    				<property name="configuration">
    					<bean class="org.apache.ibatis.session.Configuration">
    						<property name="mapUnderscoreToCamelCase" value="true"/>
    					</bean>
    				</property>
    			</bean>
    	6.工厂内容我们观察需要数据源 配置数据源不在这演示 可自行百度
    	
    	7.这里我们已经完成了主要目的 现在我们来完成次要目的 事务
    	8.分析 事务:事务需要事务管理器(mybatis的事务管理器是DataSourceTransactionManager)  事务管理器又需要数据源(dataSource)
    	9.配置事务管理器
    		    <!--事务管理器 需要注入dataSource-->
    			<bean id="transactionManager" class="org.springframework.jdbc.datasource.DataSourceTransactionManager">
    				<property name="dataSource" ref="dataSource"></property>
    			</bean>
    	10.因为我们使用的是注解事务支持 所以需要->开启事务注解驱动
    		<tx:annotation-driven transaction-manager="transactionManager"></tx:annotation-driven>
    	注意:transactionManager是固定的 所以在配置事务管理器的时候名字必须一致
    二:mybatis-spring-springmvc整合:
    	分析:因为上面已经将spring-mybatis整合所以这里我们仅仅加入springmvc就哈皮了
    		同样的我们需要为springmvc创建一个容器spring-mvc.xml
    		(其实我们可以和上面用同一个 不过为了好区分这里做了分离:注意->分离后两个容器加载后续会有讲解)
    	1.首先开启包扫描 扫描controller层
    	2.在容器中配置spring三大组件:处理器适配器 处理器映射器 视图解析器(不过后续我们都是异步请求不需要配视图解析器)
    	在springMvc配置这个标签会自动帮我们搞定 处理器映射器 处理器适配器 <mvc:annotation-driven></mvc:annotation-driven>
    	3.这里介绍:“/”会拦除jsp以外的请求因为我们不是前后端分离 (所以需要释放资源)springmvc也是一个注解帮忙搞定
    		<!--释放静态资源-->
    		<mvc:default-servlet-handler></mvc:default-servlet-handler>
    		或者选一个即可
    		<!-- 释放静态资源 -->
    		<mvc:resources location="/js/" mapping="/js/**"/>
    		<mvc:resources location="/css/" mapping="/css/**"/>
    		<mvc:resources location="/img/" mapping="/img/**"/>
    	4.springmvc容器配置这里已经讲解完了 
    		1.下面配置web.xml核心中央控制器DispatcherServlet
    		注意这里需要加载spring-mybatis容器和spingmvc容器通过<init-param>标签
    		这里需要去复习容器的加载三种方式 <import>标签 或写多个xml路径加载
    		或者创建监听器然后指定文件路径
    			<!--核心-->
    			<servlet>
    				<servlet-name>DispatcherServlet</servlet-name>
    				<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
    				<init-param>
    					<param-name>contextConfigLocation</param-name>
    					<param-value>classpath:spring-mvc.xml</param-value>
    				</init-param>
    			</servlet>
    			<servlet-mapping>
    				<servlet-name>DispatcherServlet</servlet-name>
    				<url-pattern>/</url-pattern>
    			</servlet-mapping>
    	5.web.xml配置编码 通过过滤器来编码格式
    		<!--编码设置-->
    		<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>
  • 相关阅读:
    盛最多水的容器
    除自身以外数组的乘积
    组合总和
    旋转图像
    找到所有数组中消失的数字
    RSA加密、签名机制
    SpringBoot-从新建一个项目看起
    linux下vi命令修改文件及保存的使用方法
    集合
    第一个注解式的SpringMVC项目
  • 原文地址:https://www.cnblogs.com/x-i-n/p/14167171.html
Copyright © 2011-2022 走看看