Intellij IDEA 2017創建SSM入門項目及相關配置

前言

  • 本文主要講解Intellij IDEA創建SSM入門項目
  • 本文不會講解SSM的理論知識
  • 本文所建項目未用到maven進行管理
  • 本文篇幅很長,請配同目錄享用

環境說明

  • Intellij IDEA 2017.2.6
  • Apache-tomcat-8.5.23
  • jdk 1.8
  • MySQL 5.7
  • Windows 10

版本說明

  • Spring-4.3.14
  • MyBatis-3.4.4
  • c3p0-0.9.2.1
  • Aspectj-1.8.13
  • Junit-4.10
  • Log4j-1.2.17

創建項目

創建Spring項目,並勾選如圖所示,next
這裏寫圖片描述

填寫項目名稱和路徑,finish
這裏寫圖片描述
(這裏爲做測試所用,隨意寫的項目名稱,路徑用的默認路徑)

等待jar包下載,可能需要幾分鐘,看自己的網速啦
這裏寫圖片描述

導入jar包與Build Path

1、導包

在Spring、Spring MVC、MyBatis進行整合的過程中,除了IDEA爲我們提供的Spring的JAR包外,我們還需要另外的許多jar包,如圖
這裏寫圖片描述

這裏寫圖片描述

注:jar包前邊有一個尖角符號的爲IDEA爲我們提供的,其餘爲我們自己添加
另附上SSM整合JAR包下載

2、Build Path

在我們進行導入jar包後,IDEA並不會直接進行Build Path,在這裏我們需要進行手動Build Path
這裏寫圖片描述

這裏寫圖片描述

apply,OK

創建文件夾並指定類型

這裏寫圖片描述

注:上圖中的文件夾並非需要全部創建,看個人的項目需求,在這裏我主要是將SSM項目所需的大部分文件夾創建,因爲本文只講解SSM項目的創建與相關配置,所以絕大部分文件夾是用不到的,大家忽略就行了

指定相應文件夾類型

“java”文件夾爲”Sources”
這裏寫圖片描述

“resources”文件夾爲“Resouces”類型
這裏寫圖片描述

“test”文件夾爲“Test”類型
這裏寫圖片描述

配置Spring

0、Spring初始及監聽器

強大的IDEA已經幫我們在web.xml文件中爲我們配置好了,我們查看下。
這裏寫圖片描述

至於爲什麼需要這一步,你去google、百度問問,相信你會對於Spring有一個更深的瞭解

1、創建Spring配置文件

在我們使用IDEA創建SSM項目的時候,IDEA已經給我們自動生成了spring的配置文件applicationContext.xml
這裏寫圖片描述

在這裏我們將配置文件的位置進行調整下,即將applicationContext.xml文件移動到resources目錄下的spring文件夾

這裏寫圖片描述

2、創建bean配置文件

在實際的開發項目中,特別是遇稍具規模的項目,可能會有多個bean需要在spring中進行注入,所以我們推薦將各個bean的注入進行配置文件分離

創建配置文件如圖:

這裏寫圖片描述

增加配置文件如圖,並在applicationContext.xml配置文件中進行導入配置
這裏寫圖片描述
注:現目前幾個配置文件中的內容爲空

3、配置aop

創建aop-config.xml配置文件,並在applicationContext.xml配置文件進行導入
這裏寫圖片描述

在aop-config.xml配置文件中進行配置

    <!--aop註解方式-->
    <aop:aspectj-autoproxy></aop:aspectj-autoproxy>

    <aop:config proxy-target-class="true"></aop:config>

4、配置事務

由於配置事務需要用到數據源,所以將事務配置放於配置MyBatis後

配置MyBatis

1、創建測試用的數據庫和表

create database test;
create table user(id int,name varchar(20),password varchar(40));

2、創建db.properties,並編寫相關參數

這裏寫圖片描述

jdbc.driver=com.mysql.jdbc.Driver
#數據庫地址
jdbc.url=jdbc:mysql://127.0.0.1:3306/test?userUnicode=true&characterEncoding=utf-8
#用戶名
jdbc.username=root
#密碼
jdbc.password=root
#最大連接數
c3p0.maxPoolSize=30
#最小連接數
c3p0.minPoolSize=10
#關閉連接後不自動commit
c3p0.autoCommitOnClose=false
#獲取連接超時時間
c3p0.checkoutTimeout=10000
#當獲取連接失敗重試次數
c3p0.acquireRetryAttempts=2

我建議自己進行所有的代碼都自己敲,加深印象,特別是初學SSM的小夥伴

3、創建c3p0.xml配置文件,配置c3p0連接池

這裏寫圖片描述

    <!--數據庫配置參數-->
    <context:property-placeholder location="properties/db.properties"/>

    <!--連接c3p0連接池-->
    <bean id="comboPooledDataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource">
        <property name="driverClass" value="${jdbc.driver}"/>
        <property name="jdbcUrl" value="${jdbc.url}"/>
        <property name="user" value="${jdbc.username}"/>
        <property name="password" value="${jdbc.password}"/>
        <property name="maxPoolSize" value="${c3p0.maxPoolSize}"/>
        <property name="minPoolSize" value="${c3p0.minPoolSize}"/>
        <property name="autoCommitOnClose" value="${c3p0.autoCommitOnClose}"/>
        <property name="checkoutTimeout" value="${c3p0.checkoutTimeout}"/>
        <property name="acquireRetryAttempts" value="${c3p0.acquireRetryAttempts}"/>
    </bean>

4、創建mybatis-config.xml配置文件

在Spring整合MyBatis後,我們直接廢棄MyBatis的配置文件,轉而用spring的配置文件,進行配置mybatis

這裏寫圖片描述

說明:

  • 引入c3po.xml配置文件
  • 配置數據源
  • 掃描mapper包,實現mapper接口和mapper.xml配置文件的分離(原來的規範是接口和XML配置文件必須放在同一目錄)
  • 這裏就不貼代碼了,大家都手動敲擊吧

別忘記在applicationContext.xml配置文件中進行引入mybatis-config.xml文件喲

5、Spring配置之配置事務

在實際開發項目中,一般都會進行事務的配置,

這裏寫圖片描述

同樣的,在applicationContext.xml文件引入。

此時,事務已經配置好了,一般我們會在service層上使用事務,只需要在service類上加上事務註解即可。

注:在本入門項目中並未使用事務管理,所以我們這裏只是進行配置的演示。

具體事務教程請見 Spring入門之事務管理【二】註解方式

配置Spring MVC

1、web.xml配置

在此,我們就使用IDEA中直接生成的web.xml配置文件,注意配置的路徑

這裏寫圖片描述

2、dispatcher-servlet.xml配置

這裏寫圖片描述

至此,SSM基本配置完成

測試Spring整合MyBatis

0、如需查看Spring整合MyBatis知識請訪問

MyBatis入門【十二】 Spring整合MyBatis基礎

1、創建JavaBean

創建User類
這裏寫圖片描述
注入類
這裏寫圖片描述

2、創建dao接口

創建IUserDao接口
這裏寫圖片描述
注:此處測試使用的是mapper代理開發方式

3、mapper.xml配置文件

創建UserMapper配置文件
這裏寫圖片描述

注意圖中標紅區域的配置,配置詳情請猛擊MyBatis入門【三】Mapper開發基礎

注入UserMapper
這裏寫圖片描述

4、測試方法

這裏寫圖片描述

這裏寫圖片描述

測試綠條,並且打印出了id爲1的用戶的姓名,表示測試成功

測試Spring MVC

0、Spring MVC測試項目可參考

Intellij IDEA創建spring MVC項目

1、創建hello.jsp

這裏寫圖片描述

2、controller編寫

這裏寫圖片描述

3、項目部署

這裏寫圖片描述

這裏寫圖片描述

這裏寫圖片描述

4、啓動服務器進行測試

在這裏我出現了關於listener啓動失敗的錯誤
這裏寫圖片描述

由於博主在查資料查了三個小時沒有解決這個問題,我只能暫時先不用監聽器,在此我先屏蔽監聽器

這裏寫圖片描述

重啓服務器,輸入http://localhost:8080/ssmdemo/test/hello進行測試
這裏寫圖片描述
測試成功

注:我將在後邊發佈關於listener啓動失敗的解決辦法,還望知道原因的朋友能夠評論或者私信我,謝謝


時間分割線

錯誤解決補更

一不小心就過去了半個多月的時間了,過年過得開心啦。
回學校的第二天就抓緊來修復這個問題。

注:回來後我按照上邊的教程進行了一步一步傻瓜式的配置,但在Spring中Bean管理時,我沒有使用XML配置文件的方式,而是採用了註解的方式進行,完成代碼在文末有下載鏈接。當然,大家也可以使用原來的項目進行錯誤的修復即可,並不會影響。

仔細一看,上邊錯誤提示叫我們看錯誤日誌。

好吧,那我就編寫了log4j文件,置於src目錄下。

再次啓動服務器,查看錯誤日誌:
這裏寫圖片描述

仔細一讀,發現是我mapper路徑的問題,將Spring配置文件中,配置MyBatis更改如下。

    <!--配置MyBatis-->
    <bean class="org.mybatis.spring.SqlSessionFactoryBean"
          id="sqlSessionFactory">
        <property name="dataSource" ref="comboPooledDataSource"/>

        <property name="mapperLocations" value="classpath:mapper/*.xml"/>
    </bean>

進行重新啓動服務器,無錯誤,在瀏覽器地址欄輸入http://localhost:8080/ssmdemo06/test/hello進行測試。

正常跳轉,測試成功。
這裏寫圖片描述

代碼下載

完整項目代碼下載:ssmdemo

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章