新手搭建SSM(Spring+SpringMVC+MyBatis)入門級教程

 寫這篇教程純屬是以爲SSM框架用起來實在是太舒服了,很簡單也很容易理解,也極大的提高了程序猿的編程能力,小弟但願能夠給予各位親們必定的幫助,好了很少說了,看我操做就好了。

運行環境:Eclipse+Mysql

一.建立一個Maven Project


二.修改pom.xml,導入dtd文件(dtd文件是映射的時候用的)

貼上pom.xml代碼:
(PS:其中引用了一些其餘的jar包能夠不用管)
java

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>MySSM</groupId>
<artifactId>MyTestSSM</artifactId>
<version>0.0.1-SNAPSHOT</version>
<packaging>war</packaging>

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>ctest</groupId>
<artifactId>ctest</artifactId>
<version>0.0.1-SNAPSHOT</version>
<packaging>war</packaging>
<properties>
<spring.version>4.3.3.RELEASE</spring.version>
</properties>
<dependencies>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.12</version>
<scope>test</scope>
</dependency>

<!-- 加入ServletAPI -->
<!-- https://mvnrepository.com/artifact/javax.servlet/javax.servlet-api -->
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>javax.servlet-api</artifactId>
<version>3.1.0</version>
<scope>provided</scope>
</dependency>

<!-- MySQL依賴 start -->
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>5.1.38</version>
</dependency>

<!-- MySQL依賴 end -->



<!-- 加入MyBatis 依賴 start -->
<!-- https://mvnrepository.com/artifact/org.mybatis/mybatis -->
<dependency>
<groupId>org.mybatis</groupId>
<artifactId>mybatis</artifactId>
<version>3.4.4</version>
</dependency>
<!-- mybatis-generator-core 反向生成java代碼 -->
<dependency>
<groupId>org.mybatis.generator</groupId>
<artifactId>mybatis-generator-core</artifactId>
<version>1.3.5</version>
</dependency>

<!-- 加入MyBatis 依賴 end -->

<!-- Log4j start -->
<!-- log4j-slf4j-impl -->
<dependency>
<groupId>org.apache.logging.log4j</groupId>
<artifactId>log4j-slf4j-impl</artifactId>
<version>2.6.2</version>
</dependency>
<!-- log4j-core -->
<dependency>
<groupId>org.apache.logging.log4j</groupId>
<artifactId>log4j-core</artifactId>
<version>2.6.2</version>
</dependency>
<!-- Log4j end -->

<!-- 引入Spring(包含SpringMVC) 依賴 start -->
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-core</artifactId>
<version>${spring.version}</version>
</dependency>

<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-web</artifactId>
<version>${spring.version}</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-oxm</artifactId>
<version>${spring.version}</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-tx</artifactId>
<version>${spring.version}</version>
</dependency>


<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-jdbc</artifactId>
<version>${spring.version}</version>
</dependency>

<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-webmvc</artifactId>
<version>${spring.version}</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-aop</artifactId>
<version>${spring.version}</version>
</dependency>

<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-context-support</artifactId>
<version>${spring.version}</version>
</dependency>

<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-test</artifactId>
<version>${spring.version}</version>
</dependency>

<!-- 引入Spring 依賴 end -->

<!-- 引用c3p0 依賴 start -->
<dependency>
<groupId>com.mchange</groupId>
<artifactId>c3p0</artifactId>
<version>0.9.2.1</version>
</dependency>
<!-- 引用c3p0 依賴 end -->

<!-- 引用插件依賴:MyBatis整合Spring -->
<dependency>
<groupId>org.mybatis</groupId>
<artifactId>mybatis-spring</artifactId>
<version>1.3.0</version>
</dependency>

<!-- JSTL -->
<dependency>
<groupId>jstl</groupId>
<artifactId>jstl</artifactId>
<version>1.2</version>
</dependency>

<!-- dom4j 用dom4j能更方便的處理微信平臺發過來的xml -->
<dependency>
<groupId>dom4j</groupId>
<artifactId>dom4j</artifactId>
<version>1.6.1</version>
</dependency>

<!-- fastjson 這裏只在junit test中有用到 -->
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>fastjson</artifactId>
<version>1.2.32</version>
</dependency>
<!-- fasterxml.jackson start -->
<!-- https://mvnrepository.com/artifact/com.fasterxml.jackson.core/jackson-core -->
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-core</artifactId>
<version>2.8.8</version>
</dependency>
<!-- https://mvnrepository.com/artifact/com.fasterxml.jackson.core/jackson-databind -->
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
<version>2.8.8</version>
</dependency>
<!-- fasterxml.jackson end -->


<!-- https://mvnrepository.com/artifact/commons-dbcp/commons-dbcp -->
<dependency>
<groupId>commons-dbcp</groupId>
<artifactId>commons-dbcp</artifactId>
<version>1.4</version>
</dependency>
<!-- https://mvnrepository.com/artifact/commons-fileupload/commons-fileupload -->
<dependency>
<groupId>commons-fileupload</groupId>
<artifactId>commons-fileupload</artifactId>
<version>1.3.1</version>
</dependency>

<!-- commons-httpclient 微信素材上傳-->
<dependency>
<groupId>commons-httpclient</groupId>
<artifactId>commons-httpclient</artifactId>
<version>3.0</version>
</dependency>

</dependencies>


</project>
mysql

三.建立相關文件

建立包git

建立各類類和文件
github



這裏須要注意的是dao中映射文件的建立點擊Eclipse上的導航欄>Windows>Preferences>搜索XML>選擇XML CataLog>點擊add這個時候須要添加一個dtd文件(相關文件會放到個人github項目中),點擊OK便可web

這裏配置好以後,咱們去dao包裏建立xml文件,也就是映射文件spring


而後點擊next 建立一個跟你dao名字一致的xml文件,以下sql




而後直接點擊next>finish這時候咱們的文件基本就建立好了數據庫


這裏要再配置一下ssm的配置文件applicationContext.xml,我在這裏整合了一下



四.編寫代碼apache

本人做爲新手根據我的習慣來編寫,我我的喜歡從dao先開始寫,好比你這個功能要作什麼事,本系統首先是要註冊,那我第一部就要寫一個註冊功能的dao接口,我取名爲addUser(請遵循書寫規範),建立好接口以後則要編寫sql語句,就是在剛纔建立的UserDao.xml中編寫。編程

1.dao代碼


2.貼上部分xml代碼


3.dao層寫好以後就去寫service層,這個service主要功能是控制事務,實現業務,而且能夠進行邏輯處理

service接口定義的方法一般是你這個功能的意思,我就簡單寫了爲addUser,方便讀者讀懂就行了

附上service接口代碼

接下來就要寫service的實現類了,這個時候要尤爲注意,在實現類中要加入註解

@Service(業務註解) @Transactional(事務註解) @Autowired(對類成員變量、方法及構造函數進行標註,完成自動裝配的工做)

詳細代碼以下


最後咱們去寫控制器,在controller類中要加入註解@Controller(控制器的註解)

詳細代碼以下(這裏貼了登陸的方法,有興趣的看一下)



簡單的構造一下注冊的頁面這裏沒有進行相關的判斷,有興趣的人能夠本身研究的時候添加



而後就能夠直接跑項目了,進入regist.jsp,註冊頁面註冊你的賬號


建立本身的卡號和密碼,點擊註冊

切記:不要建立數據庫已經存在的賬號,不然直接GG!

註冊完成以後會跳轉到login.jsp,這時候只要輸入你剛纔建立的卡號和密碼便可完成登陸


點擊以後跳轉到index.jsp,咱們的ssm框架也就搭建好了




首先感謝閱讀,我是一個小白程序猿,若是有理解不足的地方還請多多指教,謝謝。


github源碼下載:https://github.com/ChenSye/mytestssm.git(11.30更新版本)

相關文章
相關標籤/搜索