19.SSM整合_配置式开发

1.定义实体类Student

2.定义Student表

3.定义index页面

4.定义处理器

5.定义Service

6.定义Dao接口

7.定义Dao的Mapper配置文件

8.定义MyBatis的主配置文件(很多配置已经在spring-mybatis文件中完成了)

 1 <!-- 该配置文件中主要用于注册 Mapper 中所使用的 类的 别名,及Mapper的位置 -->
 2 <configuration>
 3     <!-- 别名 -->
 4     <typeAliases>
 5         <package name="com.ssm.model"/>
 6     </typeAliases>
 7     
 8     <!-- Mapper 位置 -->
 9     <mappers>
10         <package name="com.ssm.dao"/>
11     </mappers>
12 </configuration>

9.定义jdbc.prperties

10.定义Spring的配置文件

  (1)spring-db.xml

  (2)spring-mybatis.xml

 1 <!-- 该配置文件 主要用于 注册 SqlSessionFactoryBean 以及 Mapper 动态代理生成器的Bean -->
 2     
 3     <!-- 注册 SqlSessionFactory的Bean -->
 4     <!-- InputStream in = Resources.getResourceAsStream("mybatis.xml");
 5          session = new SqlSessionFactoryBuilder().build(in).openSession(); -->    
 6     <bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">
 7         <property name="dataSource" ref="dataSource"/>
 8         <!-- 指定mybatis 主配置文件位置 -->
 9         <property name="configLocation" value="classpath:resources/mybatis.xml"/>
10     </bean>
11     
12     
13     
14     <!-- 也可以使用Mapper 动态代理的方式,来生成 Dao 的 代理对象,但是这种方式一次 只能 生成一个 Dao 的代理对象,如果有多个类型的Dao,那么就需要配置多次
15         <bean id="studentDao" class="org.mybatis.spring.mapper.MapperFactoryBean">
16             <property name="sqlSessionFactory" ref="sqlSessionFactory"></property>
17             <property name="mapperInterface" value="com.ssm.dao.StudentDao"></property>        
18         </bean>
19     -->
20     <!-- 注册 Mapper 扫描 配置器(为指定包中的 所有接口生成代理对象) -->
21     <!-- 生成 Dao 的代理对象,使用 Mapper 配置扫描器 会为指定包中的 所有接口生成代理对象-->
22     <!-- 需要注入该 代理对象时,使用 的 是 ref,(ref="IStudentDao" 或 ref="studentDao") -->
23     <!-- <property name="dao" ref="studentDao"></property> -->
24     
25     <!-- studentDAO = sqlSession.getMapper(StudentDAO.class); -->
26     <bean class="org.mybatis.spring.mapper.MapperScannerConfigurer">
27         <property name="sqlSessionFactoryBeanName" value="sqlSessionFactory"></property>
28         <!-- 指定基本扫描包,即Dao接口包 -->
29         <property name="basePackage" value="com.ssm.dao"></property>
30     </bean>

  

  (3)spring-service.xml

  (4)spring-tx.xml

    

 1 <!-- 配置事务管理器 -->
 2     <!-- 开启Spring中的事务管理(声明式的事务管理) xml-->
 3     <bean id="transactionManager" class="org.springframework.jdbc.datasource.DataSourceTransactionManager">
 4         <property name="dataSource" ref="dataSource"></property>
 5     </bean>
 6     
 7     <!-- 注册 事务通知 -->
 8     <!-- 具体的advice(逻辑) 由 自之前定义的TransactionManager 来指定-->
 9     <tx:advice transaction-manager="transactionManager" id="transactionAdvice">
10         <tx:attributes>
11             <tx:method name="add*" isolation="DEFAULT" propagation="REQUIRED"/>
12         </tx:attributes>
13     </tx:advice>
14     
15     <!-- aop 配置 -->
16     <!-- 想要进行事务管理,都需要运用到 AOP ,往方法前后加入开启事务 和 关闭事务的 逻辑,所以用xml 进行声明式的事务管理,也需要用到AOP -->
17     <aop:config>
18         <aop:pointcut expression="execution(* *..service.*.*(..))" id="myPointCut"/>
19         <aop:advisor advice-ref="transactionAdvice" pointcut-ref="myPointCut"/>
20     </aop:config>

11.定义SpringMVC配置文件

12.定义视图页面 show.jsp

原文地址:https://www.cnblogs.com/xuzekun/p/7417488.html