使用idea+gradle建立SSM項目


目錄:  一、創建一個gradle項目

       二 、在gradle中創建SSM項目

 

 

一 、創建一個gradle項目

第一步:

打開我們的IDEA工具,選擇創建一個新項目

 

第二步:這里會讓你選擇創建一個什么項目,idea會根據選擇的不同從而創建不同的項目目錄和初始文件,此處我們選擇gradle,並選中web,然后點擊Next進入下一步。

這里要介紹一下gradle,gradle是一個開源的項目自動化構建工具,和maven功能類似,默認也是使用maven的倉庫。具體細節此處不做贅述。

第三步:此處會要求輸入GroupID和ArtifacID。Next

GroupId就是maven和gradle添加依賴時需要填寫的Group,在簡歷maven項目的時候也會要求填寫

ArtifactId也是maven中需要填寫的

Version也是,新建的項目默認1.0就好

第四步:選擇gradle,IDEA默認有gradle,可以不用選擇,如果需要使用自己安裝的gradle,那么選擇"Use local gradle distribution",然后選擇gradle的安裝路徑

(PS:建議要有一個自己安裝的版本,如果在加載其他gradle項目的時候選擇默認版本,會導致idea去下載該項目之前開發所使用的版本,而數據源是在國外,可能會極慢。)

第五步:"Project location"是項目生成的路徑,項目會被生成到這個路徑下面,這里直接點擊"Finish"完成

這里是gradle在進行首次構建,為項目創建初始目錄等,此處如果沒有選擇使用自己安裝的gradle則可能自動下載,根據網絡情況需要等待的時間不一(也有可能會一直等待,所以建議提前安裝自己的gradle)。

構建完成之后的目錄結構如下

 

gradle項目的建立到這里結束,其中有一個bulid.gradle文件,這個文件是用來添加包依賴的,和maven的pom.xml作用一樣

 

二 、在gradle中創建SSM項目

第一步:為項目設置Tomcat服務器

Name這里輸入Tomcat的命名(這個隨便是什么,你喜歡就好),然后在"Application server"處選擇Tomcat的安裝路徑,

然后Tomcat的端口號等,這里默認8080,然后點擊"Deployment"。

添加需要使用這個Tomcat發布的Artifact

這里選擇帶"(exploded)"后綴的,帶exploded后綴在打war包以后是可以直接打開看war內的內容的,而另一個不行(如果我沒記錯的話,記錯了不要噴我)。

上一步結束后會來到這里,這里設置訪問項目的URL,填"/"就是是用默認的訪問地址,IP:端口。

舉個例子,如果填/demo,按照上面配置的地址,localhost:8080,則訪問時應該是http://localhost:8080/demo作為整個后端接口url的前綴

到這里Tomcat就設置好了。

 

第二步:在gradle中添加SSM所依賴的jar包,打開bulid.gradle文件,在

dependencies{
}

中將以下代碼貼入其中。

復制代碼
compile 'log4j:log4j:1.2.17'
compile 'org.slf4j:slf4j-api:1.7.25'
compile 'org.slf4j:slf4j-simple:1.7.25'
compile 'net.logstash.log4j:jsonevent-layout:1.7'
compile 'org.apache.tomcat:tomcat-servlet-api:8.0.24'
compile 'jstl:jstl:1.2'
compile 'org.aspectj:aspectjweaver:1.8.6'

compile 'org.springframework:spring-beans:4.1.7.RELEASE'
compile 'org.springframework:spring-web:4.1.7.RELEASE'
compile 'org.springframework:spring-webmvc:4.1.7.RELEASE'
compile 'org.springframework:spring-tx:4.1.7.RELEASE'
compile 'org.springframework:spring-test:4.0.5.RELEASE'
compile 'org.springframework:spring-jdbc:4.1.7.RELEASE'

compile 'org.mybatis:mybatis-spring:1.2.3'
compile 'org.mybatis:mybatis:3.3.0'

compile 'mysql:mysql-connector-java:5.1.36'
compile 'com.alibaba:druid:1.0.15'

compile "com.fasterxml.jackson.core:jackson-databind:2.2.3"
compile "com.fasterxml.jackson.core:jackson-annotations:2.2.3"
compile "com.fasterxml.jackson.core:jackson-core:2.2.3"

providedCompile 'javax.servlet:servlet-api:2.5'

testCompile group: 'junit', name: 'junit', version: '4.12'
復制代碼

然后執行這段代碼,IDEA會自動下載這些jar包。耐心等待。。。。。。。

(此處會使用默認的maven倉庫下載包,該倉庫在國外服務器,不同網絡訪問速率不一,如果很慢,請更換國內的倉庫,更換方法百度或谷歌即可)

有些剛用idea的兄弟們可能會發現沒有下圖右側的工具欄,此時點擊idea窗口左下角的方塊小圖標就有了

 

完成之后會發現左側的"External Libraries"里面出現了我們要的jar包

 

第三步:建立SSM的包結構,在main目錄下建立"java","resources"兩個包,前者用來存放java源碼文件,后者用來存放配置文件

 

接下來就是如何在該目錄中將SSM的demo跑起來。

首先貼一下我已經建好了的目錄

首先是新建SSM需要的配置文件

log4j.properties 如下:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
log4j.rootLogger=INFO,A1,app
 
log4j.appender.A1=org.apache.log4j.ConsoleAppender
log4j.appender.A1.layout=org.apache.log4j.PatternLayout
log4j.appender.A1.layout.ConversionPattern=%p %d %X{uuid} [%c{1} %L] - %m%n
 
log4j.appender.app=org.apache.log4j.DailyRollingFileAppender
log4j.appender.app.Encoding=UTF-8
log4j.appender.app.File=/data/tomcat_logs/app.log
log4j.appender.app.DatePattern='.'yyyy-MM-dd
log4j.appender.app.layout=net.logstash.log4j.JSONEventLayoutV1
 
log4j.logger.java.sql.Connection=DEBUG
log4j.logger.java.sql.Statement=DEBUG
log4j.logger.java.sql.PreparedStatement=DEBUG
log4j.logger.java.sql.ResultSet=DEBUG

 

寫到此處,忽然有事,其他配置后續再補。。。。

  Java新手,准備寫個項目來鞏固下知識點,在新建項目時不知道選擇用什么作為構建工具,Maven肯定用過,只限於使用過,沒有系統的去學習。之前做Android開發時用過Gradle來構建項目,也沒深入研究過。后來在公司接觸過用Gradle構建的java項目,才去深入了解過,描述的是Gradle是作為下一代構建工具,很靈活。我個人覺得這個靈活是體現在配置上,我看了很多使用Gradle構建多模塊的項目的博客,配置都不相同。反正Gradle優點很多,想了解的自行百度,有很多Gradle方面的教程。
    寫這篇博客主要是為了記憶一下,加深印象,也為各位提供一種思路,有什么不對的地方勿噴,我害怕!
1、項目結構簡單說明一下項目結構,其中project-parent是根項目,project-core和project-app是子模塊,project-app依賴project-core模塊,其中IDEA我用的是ULTIMATE 2018.1版本,gradle使用的是gradle-4.4版本。



2、新建根項目project-parent通過IDEA來新建項目,左邊菜單欄選擇Gradle工具,右邊的Additional Libraries and Frameworks什么都不勾選,因為根項目我們只需要setting.gradle和build.gradle兩個文件就行了。然后一直下一步,我就不在提供操作截圖了,如果還不知道怎么新建一個Gradle項目,請百度一下,教程很多。




項目新建完成,其中能看到setting.gradle和build.gradle兩個文件。




3、新建子項目project-core選擇根項目,然后右鍵,彈出操作菜單,然后執行new->Module操作,會彈出和新建根項目一樣的操作彈窗。




然后按照新建項目,直接下一步,直到finish。我將貼出每一步的截圖






然后點擊Finish完成后,得到如下項目結構:




4、新建子項目project-app    新建流程和第三步操作一樣,我不再貼出具體截圖了,只貼出新建后的項目結構圖:




5、修改根目錄build.gradle配置:setting.gradle就不說了,可以說是一個包含項目所有module的一個腳本配置,具體可以自行查閱。
主要說下build.gradle的配置,分三部分,分別是buildscript,allprojects,subprojects
buildscript {
    ext {        springBootVersion = '2.0.0.RELEASE'    }
    repositories {        mavenCentral()        jcenter()    }
    dependencies {        classpath("org.springframework.boot:spring-boot-gradle-plugin:${springBootVersion}")    }}
allprojects {    group 'com.gradle.project'    version '1.0-SNAPSHOT'}
subprojects {    apply plugin: 'java'    apply plugin: 'idea'    apply plugin: "io.spring.dependency-management"
    sourceCompatibility = 1.8    targetCompatibility = 1.8
    repositories {        mavenLocal()        mavenCentral()        jcenter()    }
    dependencies{        //這里如果配置了jar包依賴,所有子項目共享,使用了gradle的依賴傳遞特性。        testCompile group: 'junit', name: 'junit', version: '4.12'    }}

6、project-core的build.gradle配置:      這里gradle.project什么都沒有寫,根項目的build.gradle腳本已經為所有模塊提供了基本的配置,每個模塊的build.gradle腳本可以根據不同業務提供不同的配置。
dependencies {}7、project-app模塊build.gradle配置:    app模塊使用SpringBoot框架快速發布一個測試用的應用,並且依賴於project-core模塊,具體配置如下:
apply plugin: 'org.springframework.boot'
dependencies {    compile project(':project-core')    compile('org.springframework.boot:spring-boot-starter')    compile('org.springframework.boot:spring-boot-starter-actuator')    compile('org.springframework.boot:spring-boot-starter-web')}8、project-core模塊發布類:    在此模塊下新建一個類,供app模塊調用:




9、發布project-app模塊: 通過SpringBoot配置,寫一個測試接口,使用project-core模塊的代碼提供響應消息,然后將此模塊發布為一個應用,供外部訪問:




然后啟動這個應用,可以根據控制台日志查看啟動狀態,這里啟動成功,並成功發布了request接口:




默認端口是8080,我們現在可以通過瀏覽器去訪問一下request測試接口,成功返回數據:




10、總結    在學習gradle過程中,發現需要花部分精力在上面,需要熟悉Groovy的基礎語法,然后才能去深入研究gradle工具的使用,使用過程中能夠感覺到gradle的強大,我現在只是看到了它的冰山一角,真正強大的特性還有很多,有時間可以閱讀《gradle實戰》這本書,我還沒開始看,從目錄結構看,感覺很不錯,實際開發中肯定能用的上。--------------------- 作者:皮鞭抽你爸爸 來源:CSDN 原文:https://blog.csdn.net/java779808321/article/details/79890167 版權聲明:本文為博主原創文章,轉載請附上博文鏈接!


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM