1、SSM三大框架的整合SSM三大框架的整合(Spring+SpringMVC+MyBatis)前记:曹孟,崔佳媚和我在11月23日参加了一次关于SSM的比赛,因此对SSM有点理解,所以在网上搜集了一些关于SSM框架的资料整理出来。1、基本概念1.1、Spring Spring是一个开源框架,Spring是于2003年兴起的一个轻量级的Java开发框架,由RodJohnson在其著作ExpertOne-On-OneJ2EEDevelopmentandDesign中阐述的部分理念和原型衍生而来。它是为了解决企业应用开发的复杂性而创建的。Spring使用基本的JavaBean来完成以前只可能由EJB完
2、成的事情。然而,Spring的用途不仅限于服务器端的开发。从简单性、可测试性和松耦合的角度而言,任何Java应用都可以从Spring中受益。 简单来说,Spring是一个轻量级的控制反转(IoC)和面向切面(AOP)的容器框架。1.2、SpringMVC SpringMVC属于SpringFrameWork的后续产品,已经融合在SpringWebFlow里面。SpringMVC分离了控制器、模型对象、分派器以及处理程序对象的角色,这种分离让它们更容易进行定制。1.3、MyBatis MyBatis本是apache的一个开源项目iBatis,2010年这个项目由apachesoftwarefou
3、ndation迁移到了googlecode,并且改名为MyBatis。MyBatis是一个基于Java的持久层框架。iBATIS提供的持久层框架包括SQLMaps和DataAccessObjects(DAO)MyBatis消除了几乎所有的JDBC代码和参数的手工设置以及结果集的检索。MyBatis使用简单的XML或注解用于配置和原始映射,将接口和Java的POJOs(PlainOldJavaObjects,普通的Java对象)映射成数据库中的记录。2、开发环境搭建如果需要,参看之前的博文:3、Maven Web项目创建如果需要,参看之前的博文:4、SSM整合 下面主要介绍三大框架的整合,至于环
4、境的搭建以及项目的创建,参看上面的博文。这次整合我分了2个配置文件,分别是spring-mybatis.xml,包含spring和mybatis的配置文件,还有个是spring-mvc的配置文件,此外有2个资源文件:jdbc.propertis和log4j.properties。完整目录结构如下:使用框架都是较新的版本: Spring4.0.2RELEASE SpringMVC4.0.2RELEASE MyBatis3.2.62、整合步骤2.1、Maven引入需要的JAR包 为了方便后面说的时候不需要引入JAR包,我这里直接给出所有需要的JAR包,这都是基本的JAR包,每个包的是干什么的都有注
5、释,就不再多说了。pom.xml 4.0.2.RELEASE 3.2.6 1.7.7 1.2.17 junit junit 4.11 test org.springframework spring-core $spring.version org.springframework spring-web $spring.version org.springframework spring-oxm $spring.version org.springframework spring-tx $spring.version org.springframework spring-jdbc $spring.
6、version org.springframework spring-webmvc $spring.version org.springframework spring-aop $spring.version org.springframework spring-context-support $spring.version org.springframework spring-test $spring.version org.mybatis mybatis $mybatis.version org.mybatis mybatis-spring 1.2.2 javax javaee-api 7
7、.0 mysql mysql-connector-java 5.1.30 commons-dbcp commons-dbcp 1.2.2 jstl jstl 1.2 log4j log4j $log4j.version com.alibaba fastjson 1.1.41 org.slf4j slf4j-api $slf4j.version org.slf4j slf4j-log4j12 $slf4j.version org.codehaus.jackson jackson-mapper-asl 1.9.13 commons-fileupload commons-fileupload 1.3
8、.1 commons-io commons-io 2.4 commons-codec commons-codec 1.9 2.2、Spring与MyBatis的整合所有需要的JAR包都引入以后,首先进行Spring与MyBatis的整合,然后再进行JUnit测试,先看一个项目结构图:2.2.1、建立JDBC属性文件jdbc.properties(文件编码修改为utf-8)driver=com.mysql.jdbc.Driverurl=jdbc:mysql:/10.221.10.111:8080/db_zslusername=demaopassword=demao#定义初始连接数initialS
9、ize=0#定义最大连接数maxActive=20#定义最大空闲maxIdle=20#定义最小空闲minIdle=1#定义最长等待时间maxWait=600002.2.2、建立spring-mybatis.xml配置文件 这个文件就是用来完成spring和mybatis的整合的。这里面也没多少行配置,主要的就是自动扫描,自动注入,配置数据库。注释也很详细,大家看看就明白了。spring-mybatis.xml 2.2.3、Log4j的配置 为了方便调试,一般都会使用日志来输出信息,Log4j是Apache的一个开放源代码项目,通过使用Log4j,我们可以控制日志信息输送的目的地是控制台、文件、
10、GUI组件,甚至是套接口服务器、NT的事件记录器、UNIXSyslog守护进程等;我们也可以控制每一条日志的输出格式;通过定义每一条日志信息的级别,我们能够更加细致地控制日志的生成过程。 Log4j的配置很简单,而且也是通用的,下面给出一个基本的配置,换到其他项目中也无需做多大的调整,如果想做调整或者想了解Log4j的各种配置,参看我转载的一篇博文,很详细:下面给出配置文件目录:log4j.properties#定义LOG输出级别log4j.rootLogger=INFO,Console,File#定义日志输出目的地为控制台log4j.appender.Console=org.apache.l
11、og4j.ConsoleAppenderlog4j.appender.Console.Target=System.out#可以灵活地指定日志输出格式,下面一行是指定具体的格式log4j.appender.Console.layout = org.apache.log4j.PatternLayoutlog4j.appender.Console.layout.ConversionPattern=%c - %m%n#文件大小到达指定尺寸的时候产生一个新的文件log4j.appender.File = org.apache.log4j.RollingFileAppender#指定输出目录log4j.a
12、ppender.File.File = logs/ssm.log#定义文件最大大小log4j.appender.File.MaxFileSize = 10MB# 输出所以日志,如果换成DEBUG表示输出DEBUG以上级别日志log4j.appender.File.Threshold = ALLlog4j.appender.File.layout = org.apache.log4j.PatternLayoutlog4j.appender.File.layout.ConversionPattern =%p %dyyyy-MM-dd HH:mm:ss%c%m%n2.2.4、JUnit测试 经过以上步骤(到4.2.2,log4j不配也没影响),我们已经完成了Spring和mybatis的整合,这样我们就可以编写一段测试代码来试试是否成功了。2.2.4.1、创建测试用表既然我们需要测试,那么我们就需要建立在数据库中建立一个测试表,这个表建的很简单,
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1