使用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 版权声明:本文为博主原创文章,转载请附上博文链接!

转载于:https://www.cnblogs.com/Im-Victor/p/10845281.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值