您的位置:首页 > 编程语言 > Java开发

开启第一个spring boot项目

2018-02-05 22:56 441 查看
 一、开发环境

1)JDK8+

2)Gradle 4+

3)IDEA(环境装好后配置)
 二、配置环境

GRADLE_HOME D:\Program Files\gradle-4.5
JAVA_HOME D:\Program Files\Java\jdk1.8.0_92
PATH %GRADLE_HOME%\bin;%JAVA_HOME%\bin
CLASSPATH .

检查配置



 三、使用 Spring Initializr 项目初始化WEB项目:https://start.spring.io



==== 解开



.gitignore
 定义上传git时忽略与开发工具IDE相关的配置文件
build.gradle gradle项目的配置文件,如下:(已添加注释,和部分修改)

// buildscript 代码块中脚本优先执行
buildscript {
// ext 用于定义动态属性
ext {
springBootVersion = '2.0.0.M4'
}
// 使用了Maven的中央仓库及Spring自己的仓库(也可以指定其他仓库)
repositories {
// mavenCentral()
maven { url "https://repo.spring.io/snapshot" }
maven { url "https://repo.spring.io/milestone" }
maven { url "http://maven.aliyun.com/nexus/content/groups/public/" }
}
// 依赖关系
dependencies {
// classpath 声明了在执行其余的脚本时,ClassLoader 可以使用这些依赖项
classpath("org.springframework.boot:spring-boot-gradle-plugin:${springBootVersion}")
}
}

// 使用插件
apply plugin: 'java'
apply plugin: 'eclipse'
apply plugin: 'org.springframework.boot'
apply plugin: 'io.spring.dependency-management'

// 指定了生成的编译文件的版本,默认是打成了 jar 包
group = 'com.waylau.spring.cloud'
version = '1.0.0'

// 指定编译 .java 文件的 JDK 版本
sourceCompatibility = 1.8

// 使用了Maven的中央仓库及Spring自己的仓库(也可以指定其他仓库)
repositories {
//mavenCentral()
maven { url "https://repo.spring.io/snapshot" }
maven { url "https://repo.spring.io/milestone" }
maven { url "http://maven.aliyun.com/nexus/content/groups/public/" }
}

// 依赖关系,配置的核心部分
dependencies {
// 该依赖用于编译阶段
compile('org.springframework.boot:spring-boot-starter-web')
// 该依赖用于测试阶段
testCompile('org.springframework.boot:spring-boot-starter-test')
}
1)注释掉中央仓库,添加国内阿里的仓库
2)调整版本springBootVersion = '2.0.0.M4'(有些较高的版本ali的仓库可能还没有同步更新)

 四、在项目目录下编译测试

> gradle build
编译通过,则进入下一步

 五、编写Hello World程序

1)拷贝文件夹 initializr-start 为 hello-world

2)只保留两文件夹gradle、src和四文件.gitignore、build.gradle、gradlew、gradlew.bat,其它的统统删掉

(后续简称gradle、src、.gitignore、build.gradle、gradlew、gradlew.bat为:两夹四件)

3)修改build.gradle中version = '1.0.0'

4)导入项目到IDEA

5)增加controller文件夹,编写控制器HelloController

@RestController

public class HelloController {

    //@RequestMapping("/hello")

    @GetMapping("/hello")

    public String hello(){

        return "Hello World!";

    }

}

6)编写测试用例HelloControllerTest
光标定位到HelloController,alt+enter,提示窗内选在CreateTest



@RunWith(SpringRunner.class)

@SpringBootTest

@AutoConfigureMockMvc

public class HelloControllerTest {

    @Autowired

    private MockMvc mockMvc;

    @Test

    public void testHello() throws Exception {

        mockMvc.perform(MockMvcRequestBuilders.get("/hello").accept(MediaType.APPLICATION_JSON))

            .andExpect(status().isOk())

            .andExpect(content().string(equalTo("Hello World!")));

    }

}

7)运行测试用例

==== 三种应用运行方式
1)IDE里面右键项目(Run 'Application.main()'  Ctrl+Shift+F10)

 测试访问:http://localhost:8080/hello

2)java -jar xxx.jar
 命令行窗口进入到项目根目录下:gradle build

$ cd build/libs

$ java -jar hello-world-1.0.0.jar
 测试访问:http://localhost:8080/hello

3)gradle bootRun

 命令行窗口进入到项目根目录下:gradle bootRun
 测试访问:http://localhost:8080/hello
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  Spring