框架的整合:

  1. 1. 依赖整合
  2. aop的包:
  3. aspectweaver
  4. spring-aop
  5. spring核心:
  6. spring-context
  7. spring-web
  8. spring-webmvc
  9. spring-test
  10. spring-tx
  11. spring-jdbc
  12. junit:
  13. junit
  14. mysql:
  15. mysql-connector-java
  16. servlet+jsp:
  17. servlet-api
  18. jsp-api
  19. jstl:
  20. jstl
  21. log:
  22. log4j
  23. slf4j-api
  24. slf4j-log4j12
  25. mybatis:
  26. mybatis
  27. mybatis-spring
  28. 连接池:
  29. c3p0
  30. <properties>
  31. <spring.version>5.0.2.RELEASE</spring.version>
  32. <slf4j.version>1.6.6</slf4j.version>
  33. <log4j.version>1.2.12</log4j.version>
  34. <mysql.version>5.1.6</mysql.version>
  35. <mybatis.version>3.4.5</mybatis.version>
  36. </properties>
  37. <dependencies>
  38. <!-- spring -->
  39. <dependency>
  40. <groupId>org.aspectj</groupId>
  41. <artifactId>aspectjweaver</artifactId>
  42. <version>1.6.8</version>
  43. </dependency>
  44. <dependency>
  45. <groupId>org.springframework</groupId>
  46. <artifactId>spring-aop</artifactId>
  47. <version>${spring.version}</version>
  48. </dependency>
  49. <dependency>
  50. <groupId>org.springframework</groupId>
  51. <artifactId>spring-context</artifactId>
  52. <version>${spring.version}</version>
  53. </dependency>
  54. <dependency>
  55. <groupId>org.springframework</groupId>
  56. <artifactId>spring-web</artifactId>
  57. <version>${spring.version}</version>
  58. </dependency>
  59. <dependency>
  60. <groupId>org.springframework</groupId>
  61. <artifactId>spring-webmvc</artifactId>
  62. <version>${spring.version}</version>
  63. </dependency>
  64. <dependency>
  65. <groupId>org.springframework</groupId>
  66. <artifactId>spring-test</artifactId>
  67. <version>${spring.version}</version>
  68. </dependency>
  69. <dependency>
  70. <groupId>org.springframework</groupId>
  71. <artifactId>spring-tx</artifactId>
  72. <version>${spring.version}</version>
  73. </dependency>
  74. <dependency>
  75. <groupId>org.springframework</groupId>
  76. <artifactId>spring-jdbc</artifactId>
  77. <version>${spring.version}</version>
  78. </dependency>
  79. <dependency>
  80. <groupId>junit</groupId>
  81. <artifactId>junit</artifactId>
  82. <version>4.12</version>
  83. <scope>compile</scope>
  84. </dependency>
  85. <dependency>
  86. <groupId>mysql</groupId>
  87. <artifactId>mysql-connector-java</artifactId>
  88. <version>${mysql.version}</version>
  89. </dependency>
  90. <dependency>
  91. <groupId>javax.servlet</groupId>
  92. <artifactId>servlet-api</artifactId>
  93. <version>2.5</version>
  94. <scope>provided</scope>
  95. </dependency>
  96. <dependency>
  97. <groupId>javax.servlet.jsp</groupId>
  98. <artifactId>jsp-api</artifactId>
  99. <version>2.0</version>
  100. <scope>provided</scope>
  101. </dependency>
  102. <dependency>
  103. <groupId>jstl</groupId>
  104. <artifactId>jstl</artifactId>
  105. <version>1.2</version>
  106. </dependency>
  107. <!-- log start -->
  108. <dependency>
  109. <groupId>log4j</groupId>
  110. <artifactId>log4j</artifactId>
  111. <version>${log4j.version}</version>
  112. </dependency>
  113. <dependency>
  114. <groupId>org.slf4j</groupId>
  115. <artifactId>slf4j-api</artifactId>
  116. <version>${slf4j.version}</version>
  117. </dependency>
  118. <dependency>
  119. <groupId>org.slf4j</groupId>
  120. <artifactId>slf4j-log4j12</artifactId>
  121. <version>${slf4j.version}</version>
  122. </dependency>
  123. <!-- log end -->
  124. <dependency>
  125. <groupId>org.mybatis</groupId>
  126. <artifactId>mybatis</artifactId>
  127. <version>${mybatis.version}</version>
  128. </dependency>
  129. <dependency>
  130. <groupId>org.mybatis</groupId>
  131. <artifactId>mybatis-spring</artifactId>
  132. <version>1.3.0</version>
  133. </dependency>
  134. <dependency>
  135. <groupId>c3p0</groupId>
  136. <artifactId>c3p0</artifactId>
  137. <version>0.9.1.2</version>
  138. <type>jar</type>
  139. <scope>compile</scope>
  140. </dependency>
  141. </dependencies>
  142. 2. 配置文件整合
  143. applicationContext.xml的约束编写:
  144. <?xml version="1.0" encoding="UTF-8"?>
  145. <beans xmlns="http://www.springframework.org/schema/beans"
  146. xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  147. xmlns:context="http://www.springframework.org/schema/context"
  148. xmlns:aop="http://www.springframework.org/schema/aop"
  149. xmlns:tx="http://www.springframework.org/schema/tx"
  150. xsi:schemaLocation="http://www.springframework.org/schema/beans
  151. http://www.springframework.org/schema/beans/spring-beans.xsd
  152. http://www.springframework.org/schema/context
  153. http://www.springframework.org/schema/context/spring-context.xsd
  154. http://www.springframework.org/schema/aop
  155. http://www.springframework.org/schema/aop/spring-aop.xsd
  156. http://www.springframework.org/schema/tx
  157. http://www.springframework.org/schema/tx/spring-tx.xsd">
  158. <!-- 开启注解扫描,要扫描的是servicedao层的注解,要忽略web层注解,因为web层让SpringMVC框架 去管理 -->
  159. <context:component-scan base-package="cn.itcast">
  160. <!-- 配置要忽略的注解 -->
  161. <context:exclude-filter type="annotation" expression="org.springframework.stereotype.Controller"/>
  162. </context:component-scan>
  163. <!--spring整合mybatis框架-->
  164. <!--配置c3p0连接池-->
  165. <bean id="dataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource">
  166. <property name="driverClass" value="com.mysql.jdbc.Driver"/>
  167. <property name="jdbcUrl" value="jdbc:mysql://localhost:3306/ssm"/>
  168. <property name="user" value="root"/>
  169. <property name="password" value="nrblwbb7"/>
  170. </bean>
  171. <!--配置SqlSessionFactory-->
  172. <bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">
  173. <property name="dataSource" ref="dataSource"/>
  174. </bean>
  175. <!--配置映射接口所在的包-->
  176. <!--自动为接口生成代理对象,并将代理对象存在springIOC容器中-->
  177. <bean id="mapperScanner" class="org.mybatis.spring.mapper.MapperScannerConfigurer">
  178. <property name="basePackage" value="com.itheima.mapper"/>
  179. </bean>
  180. <!--配置Spring框架声明式事务管理-->
  181. <!--配置事务管理器-->
  182. <bean id="transactionManager" class="org.springframework.jdbc.datasource.DataSourceTransactionManager">
  183. <property name="dataSource" ref="dataSource"/>
  184. </bean>
  185. <!--配置事务通知-->
  186. <tx:advice id="txAdvice" transaction-manager="transactionManager">
  187. <tx:attributes>
  188. <tx:method name="find*" read-only="true"/>
  189. <tx:method name="*"/>
  190. </tx:attributes>
  191. </tx:advice>
  192. <!--配置AOP增强,切面-->
  193. <aop:config>
  194. <aop:advisor advice-ref="txAdvice" pointcut="execution(* com.itheima.service.impl.*.*(..))"/>
  195. </aop:config>
  196. </beans>
  197. springmvc.xml的配置文件的约束:
  198. <?xml version="1.0" encoding="UTF-8"?>
  199. <beans xmlns="http://www.springframework.org/schema/beans"
  200. xmlns:mvc="http://www.springframework.org/schema/mvc"
  201. xmlns:context="http://www.springframework.org/schema/context"
  202. xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  203. xsi:schemaLocation="http://www.springframework.org/schema/beans
  204. http://www.springframework.org/schema/beans/spring-beans.xsd
  205. http://www.springframework.org/schema/mvc
  206. http://www.springframework.org/schema/mvc/spring-mvc.xsd
  207. http://www.springframework.org/schema/context
  208. http://www.springframework.org/schema/context/spring-context.xsd">
  209. <!--开启注解扫描-->
  210. <context:component-scan base-package="com.itheima">
  211. <!--配置需要扫描的注解,只需要扫描Controller注解就可以-->
  212. <context:include-filter type="annotation" expression="org.springframework.stereotype.Controller"/>
  213. </context:component-scan>
  214. <!--配置视图解析器-->
  215. <bean id="internalResourceViewResolver" class="org.springframework.web.servlet.view.InternalResourceViewResolver">
  216. <property name="prefix" value="/WEB-INF/pages/"/>
  217. <property name="suffix" value=".jsp"/>
  218. </bean>
  219. <!--配置静态资源过滤,不拦截-->
  220. <mvc:resources mapping="/js/**" location="/js/"></mvc:resources>
  221. <mvc:resources mapping="/images/**" location="/images/"></mvc:resources>
  222. <mvc:resources mapping="/css/**" location="/css/"></mvc:resources>
  223. <!--开启SpringMVC的注解驱动支持-->
  224. <mvc:annotation-driven></mvc:annotation-driven>
  225. </beans>
  226. 3. 创建项目的结构:
  227. domain
  228. controller
  229. mapper
  230. service
  231. impl
  232. 4. spring整合SpringMVC, 核心是需要在web.xml配置文件中加载applicationContext.xml文件(也就是配置Spring的监听器):
  233. <!--配置Spring的监听器-->
  234. <listener>
  235. <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
  236. </listener>
  237. <!--配置加载类的配置文件-->
  238. <context-param>
  239. <param-name>contextConfigLocation</param-name>
  240. <param-value>classpath:applicationContext.xml</param-value>
  241. </context-param>
  242. <!--配置前端控制器-->
  243. <servlet>
  244. <servlet-name>dispatcherServlet</servlet-name>
  245. <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
  246. <!--加载SpringMVC的配置文件-->
  247. <init-param>
  248. <param-name>contextConfigLocation</param-name>
  249. <param-value>classpath:springmvc.xml</param-value>
  250. </init-param>
  251. <load-on-startup>1</load-on-startup>
  252. </servlet>
  253. <servlet-mapping>
  254. <servlet-name>dispatcherServlet</servlet-name>
  255. <url-pattern>/</url-pattern>
  256. </servlet-mapping>
  257. <!--配置编码过滤器-->
  258. <filter>
  259. <filter-name>characterEncoding</filter-name>
  260. <filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>
  261. <init-param>
  262. <param-name>encoding</param-name>
  263. <param-value>UTF-8</param-value>
  264. </init-param>
  265. </filter>
  266. <filter-mapping>
  267. <filter-name>characterEncoding</filter-name>
  268. <url-pattern>/*</url-pattern>
  269. </filter-mapping>
  270. 5. 在Controller中注入service,测试是否整合成功,如果正常访问并输出,则说明spring整合springMVC成功
  271. 6. Mybatis的配置
  272. <?xml version="1.0" encoding="UTF-8"?>
  273. <!DOCTYPE configuration
  274. PUBLIC "-//mybatis.org//DTD Config 3.0//EN"
  275. "http://mybatis.org/dtd/mybatis-3-config.dtd">
  276. <configuration>
  277. <!--配置环境-->
  278. <environments default="mysql">
  279. <environment id="mysql">
  280. <transactionManager type="JDBC"></transactionManager>
  281. <dataSource type="POOLED">
  282. <property name="driver" value="com.mysql.jdbc.Driver"/>
  283. <property name="url" value="jdbc:mysql://localhost:3306/ssm"/>
  284. <property name="username" value="root"/>
  285. <property name="password" value="nrblwbb7"/>
  286. </dataSource>
  287. </environment>
  288. </environments>
  289. <!--引入映射配置文件-->
  290. <mappers>
  291. <package name="com.itheima.mapper" />
  292. </mappers>
  293. </configuration>
  294. 7. spring整合mybatis
  295. mybatis的配置文件总共包含了两个部分,一个是环境的配置,包括事务和数据源,这两个部分交给spring,最后还有一个映射配置文件,也交给spring去整合,最后mybatis的配置文件就可以删除了.
  296. 在spring的配置文件中配置
  297. 连接池
  298. <!--配置c3p0连接池-->
  299. <bean id="dataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource">
  300. <property name="driverClass" value="com.mysql.jdbc.Driver"/>
  301. <property name="jdbcUrl" value="jdbc:mysql://localhost:3306/ssm"/>
  302. <property name="user" value="root"/>
  303. <property name="password" value="nrblwbb7"/>
  304. </bean>
  305. 配置sqlSessionFactory工厂
  306. <!--配置SqlSessionFactory-->
  307. <bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">
  308. <property name="dataSource" ref="dataSource"/>
  309. </bean>
  310. 配置mapper接口所在的包
  311. <!--配置映射接口所在的包-->
  312. <bean id="mapperScanner" class="org.mybatis.spring.mapper.MapperScannerConfigurer">
  313. <property name="basePackage" value="com.itheima.mapper"/>
  314. </bean>
  315. 8. 配置Spring的事务管理
  316. <!--配置事务管理器-->
  317. <bean id="transactionManager" class="org.springframework.jdbc.datasource.DataSourceTransactionManager">
  318. <property name="dataSource" ref="dataSource"/>
  319. </bean>
  320. <!--配置事务通知-->
  321. <tx:advice id="txAdvice" transaction-manager="transactionManager">
  322. <tx:attributes>
  323. <tx:method name="find*" read-only="true"/>
  324. <tx:method name="*"/>
  325. </tx:attributes>
  326. </tx:advice>
  327. <!--配置AOP增强,切面-->
  328. <aop:config>
  329. <aop:advisor advice-ref="txAdvice" pointcut="execution(* com.itheima.service.impl.*.*(..))"/>
  330. </aop:config>

log4j日志

  1. 1. 日志级别:
  2. trace --> debug --> info --> warn --> error --> fatal

提供了两个模板,一个是mybatis使用注解,一个mybatis使用xml,可以去下载查看

https://www.jianguoyun.com/p/DTyTbr0Q7sKPBxj2_nk

SSM的整合的更多相关文章

  1. SSM项目整合基本步骤

    SSM项目整合 1.基本概念 1.1.Spring Spring 是一个开源框架, Spring 是于 2003  年兴起的一个轻量级的 Java  开发框架,由 Rod Johnson  在其著作  ...

  2. SSM框架整合项目 :租房管理系统

    使用ssm框架整合,oracle数据库 框架: Spring SpringMVC MyBatis 导包: 1, spring 2, MyBatis 3, mybatis-spring 4, fastj ...

  3. 基于maven的ssm框架整合

    基于maven的ssm框架整合 第一步:通过maven建立一个web项目.                第二步:pom文件导入jar包                              (1 ...

  4. JavaWeb之ssm框架整合,用户角色权限管理

    SSM框架整合 Spring SpringMVC MyBatis 导包: 1, spring 2, MyBatis 3, mybatis-spring 4, fastjson 5, aspectwea ...

  5. SSM框架整合环境构建——基于Spring4和Mybatis3

    目录 环境 配置说明 所需jar包 配置db.properties 配置log4j.properties 配置spring.xml 配置mybatis-spring.xml 配置springmvc.x ...

  6. ssm+redis整合(通过aop自定义注解方式)

    此方案借助aop自定义注解来创建redis缓存机制. 1.创建自定义注解类 package com.tp.soft.common.util; import java.lang.annotation.E ...

  7. SSM框架整合篇

    目录 SSM整合 框架搭建步骤 SSM整合 Author:SimpleWu github(已上传SSMrest风格简单增删该查实例):https://gitlab.com/450255266/code ...

  8. springmvc(二) ssm框架整合的各种配置

    ssm:springmvc.spring.mybatis这三个框架的整合,有耐心一步步走. --WH 一.SSM框架整合 1.1.整合思路 从底层整合起,也就是先整合mybatis与spring,然后 ...

  9. ssm+redis整合(通过cache方式)

    这几天的研究ssm redis 终于进入主题了,今天参考了网上一些文章搭建了一下ssm+redis整合,特别记录下来以便以后可以查询使用,有什么不足请大牛们提点 项目架构 1.pom.xml < ...

  10. SSM框架整合的其它方式

    ---------------------siwuxie095                                 SSM 框架整合的其它方式         1.主要是整合 Spring ...

随机推荐

  1. 分布式消息队列RocketMQ与Kafka架构上的巨大差异

    分布式消息服务 Kafka 是一个高吞吐.高可用的消息中间件服务,适用于构建实时数据管道.流式数据处理.第三方解耦.流量削峰去谷等场景,具有大规模.高可靠.高并发访问.可扩展且完全托管的特点,是分布式 ...

  2. Linux命令之mount挂载

    挂载概念 Linux中的根目录以外的文件要想被访问,需要将其“关联”到根目录下的某个目录来实现,这种关联操作就是“挂载”,这个目录就是“挂载点”,解除次关联关系的过程称之为“卸载”. 注意:“挂载点” ...

  3. more和less命令详解

    基础命令学习目录首页 原文链接:https://www.cnblogs.com/aijianshi/p/5750911.html 一.more命令 more功能类似 cat ,cat命令是整个文件的内 ...

  4. Python 命令行解析工具 Argparse介绍

    最近在研究pathon的命令行解析工具,argparse,它是Python标准库中推荐使用的编写命令行程序的工具. 以前老是做UI程序,今天试了下命令行程序,感觉相当好,不用再花大把时间去研究界面问题 ...

  5. Linux常用软件安装与配置——目录

    http://blog.csdn.net/clevercode/article/details/45740431

  6. java判断字符串编码

    是 public static String getEncoding(String str){ String encoding = "UTF-8"; try { if (str.e ...

  7. TeamWork#3,Week5,Performance Test of Crawlers

    爬虫总体性能不错,能完成基本的网络数据爬取,没有功能上的缺陷.下图为饿了么网站商户信息爬取结果及原网站信息. 大部分信息是正确的,但也有一些错误.比如下图,小渝馆家常菜和渝码头川菜位置爬取错了. 再比 ...

  8. Task 4 求数组的连续子数组的最大和(团队合作)

    小组成员:李敏.刘子晗 1.设计思想:由于已经做过这个题目,只要对之前的程序加上相应的测试和约束即可.我们两个人一起商议后,决定了程序的主框架和并列出了最终可以实现的功能.先要定义数组长度和上下限的变 ...

  9. iOS开发值得收藏的博客

    http://kobedai.me/ objc.io PS:经典,内容深而广objc中国NSHipster PS:很多小细节NSHipster 中文版唐巧的技术博客 PS:LZ是唐巧的脑残粉…OneV ...

  10. 词频统计(WEB)版

    需求: 在以前的基础上把程序迁移到web平台,通过用户上传TXT的方式接收文件. 前端页面代码: <%@ Page Language="C#" AutoEventWireup ...