使用SSM(Spring、SpringMVC和Mybatis)已經(jīng)有三個(gè)多月了,項(xiàng)目在技術(shù)上已經(jīng)沒(méi)有什么難點(diǎn)了,基于現(xiàn)有的技術(shù)就可以實(shí)現(xiàn)想要的功能,當(dāng)然肯定有很多可以改進(jìn)的地方。之前沒(méi)有記錄SSM整合的過(guò)程,這次剛剛好基于自己的一個(gè)小項(xiàng)目重新搭建了一次,而且比項(xiàng)目搭建的要更好一些。以前解決問(wèn)題的過(guò)程和方法并沒(méi)有及時(shí)記錄,以后在自己的小項(xiàng)目中遇到我再整理分享一下。這次,先說(shuō)說(shuō)三大框架整合過(guò)程。個(gè)人認(rèn)為使用框架并不是很難,關(guān)鍵要理解其思想,這對(duì)于我們提高編程水平很有幫助。不過(guò),如果用都不會(huì),談思想就變成紙上談兵了!?。?/p>
創(chuàng)新互聯(lián)是一家專業(yè)提供樟樹企業(yè)網(wǎng)站建設(shè),專注與成都網(wǎng)站建設(shè)、成都網(wǎng)站設(shè)計(jì)、HTML5建站、小程序制作等業(yè)務(wù)。10年已為樟樹眾多企業(yè)、政府機(jī)構(gòu)等服務(wù)。創(chuàng)新互聯(lián)專業(yè)網(wǎng)絡(luò)公司優(yōu)惠進(jìn)行中。1、基本概念 1.1、SpringSpring是一個(gè)開源框架,Spring是于2003 年興起的一個(gè)輕量級(jí)的Java 開發(fā)框架,由Rod Johnson 在其著作Expert One-On-One J2EE Development and Design中闡述的部分理念和原型衍生而來(lái)。它是為了解決企業(yè)應(yīng)用開發(fā)的復(fù)雜性而創(chuàng)建的。Spring使用基本的JavaBean來(lái)完成以前只可能由EJB完成的事情。然而,Spring的用途不僅限于服務(wù)器端的開發(fā)。從簡(jiǎn)單性、可測(cè)試性和松耦合的角度而言,任何Java應(yīng)用都可以從Spring中受益。 簡(jiǎn)單來(lái)說(shuō),Spring是一個(gè)輕量級(jí)的控制反轉(zhuǎn)(IoC)和面向切面(AOP)的容器框架。
1.2、SpringMVCSpring MVC屬于SpringFrameWork的后續(xù)產(chǎn)品,已經(jīng)融合在Spring Web Flow里面。Spring MVC 分離了控制器、模型對(duì)象、分派器以及處理程序?qū)ο蟮慕巧?,這種分離讓它們更容易進(jìn)行定制。
1.3、MyBatisMyBatis 本是apache的一個(gè)開源項(xiàng)目iBatis, 2010年這個(gè)項(xiàng)目由apache software foundation 遷移到了google code,并且改名為MyBatis 。MyBatis是一個(gè)基于Java的持久層框架。iBATIS提供的持久層框架包括SQL Maps和Data Access Objects(DAO)MyBatis 消除了幾乎所有的JDBC代碼和參數(shù)的手工設(shè)置以及結(jié)果集的檢索。MyBatis 使用簡(jiǎn)單的 XML或注解用于配置和原始映射,將接口和 Java 的POJOs(Plain Old Java Objects,普通的 Java對(duì)象)映射成數(shù)據(jù)庫(kù)中的記錄。
2、開發(fā)環(huán)境搭建感興趣的朋友可以參考下這篇文章:https://www.jb51.net/article/131269.htm
3、Maven Web項(xiàng)目創(chuàng)建感興趣的朋友可以參考下這篇文章:https://www.jb51.net/article/133062.htm
4、SSM整合下面主要介紹三大框架的整合,至于環(huán)境的搭建以及項(xiàng)目的創(chuàng)建,參看上面的博文。這次整合我分了2個(gè)配置文件,分別是spring-mybatis.xml,包含spring和mybatis的配置文件,還有個(gè)是spring-mvc的配置文件,此外有2個(gè)資源文件:jdbc.propertis和log4j.properties。完整目錄結(jié)構(gòu)如下(最后附上源碼下載地址,不建議直接使用源碼,因?yàn)榇私坛桃呀?jīng)有了全部代碼):
使用框架都是較新的版本:
Spring 4.0.2 RELEASE
Spring MVC 4.0.2 RELEASE
MyBatis 3.2.6
為了方便后面說(shuō)的時(shí)候不需要引入JAR包,我這里直接給出所有需要的JAR包,這都是基本的JAR包,每個(gè)包的是干什么的都有注釋,就不再多說(shuō)了。
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.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.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.1 commons-io commons-io 2.4 commons-codec commons-codec 1.9