搭建SpringBoot脚手架
说明:
在此之前电脑需要下载安装配置jdk, 下载Eclipse,下载配置tomcat 下载配置Maven
我的版本是:
jdk1.8, eclipse-jee-2019-06 , apache-tomcat-8.5.59 , apache-maven-3.6.3
新建maven项目,然后把下列文件有选择性的复制到你新建的项目中
目录
模块 | 配置项 | 备注 |
---|---|---|
添加依赖 | pom.xml | 下载项目所依赖jar包 |
启动类 | App.java | 启动SpringBoot项目 |
控制层 | Controller.java | 实现页面跳转和数据传递 |
项目结构
下图为Eclipse中的项目结构截图
1. 添加依赖 pom.xml
1.1 注释版
<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">
<!--POM模型的版本,对于Maven2或者Maven3来说只能是4.0.0 -->
<modelVersion>4.0.0</modelVersion>
<!-- 定义项目属于哪个组,往往和组织或者公司存在关联如域名.公司名.项目名 -->
<groupId>org.it</groupId>
<!-- 项目名 -->
<artifactId>Demo</artifactId>
<!-- 快照是一种特殊的版本,指定了某个当前的开发进度的副本 -->
<version>0.0.1-SNAPSHOT</version>
<!-- 打包方式jar war pom -->
<packaging>jar</packaging>
<!-- 非必需的,声明一个对于用户来说友好的项目名称 name 只是一个名称,项目的全名称,可以是大写空格多个词-->
<name>Demo</name>
<!-- maven远程仓库地址 -->
<url>http://maven.apache.org</url>
<!-- 指明编译源代码时使用的字符编码,maven编译的时候默认使用的GBK编码,
通过project.build.sourceEncoding属性设置字符编码,告诉maven这个项目使用UTF-8来编译 -->
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
</properties>
<!--springboot相关jar包版本 也就是说依赖管理,引入以后在申明其它dependency的时候就不需要version了,后面可以看到。 -->
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>1.5.8.RELEASE</version>
</parent>
<!--依赖关系-->
<dependencies>
<!-- 使用JUnit对src/test/java进行单元测试 ,不加test文件夹会报错-->
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>3.8.1</version>
<scope>test</scope>
</dependency>
<!-- 开发的是web工程 包含Tomcat和Springmvc-->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
</dependencies>
</project>
1.2 简洁版
<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>org.it</groupId>
<artifactId>Demo</artifactId>
<version>0.0.1-SNAPSHOT</version>
<packaging>jar</packaging>
<name>Demo</name>
<url>http://maven.apache.org</url>
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
</properties>
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>1.5.8.RELEASE</version>
</parent>
<dependencies>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>3.8.1</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
</dependencies>
</project>
2. 启动类代码编辑 App.java
package org.it.Demo;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
@SpringBootApplication
public class App
{
public static void main( String[] args ){
SpringApplication.run(App.class, args);
}
}
3. 控制层 TestController
3.1 TestController1.java
说明:
在控制类中使用@Controller和@RequestMapping注解
package org.it.Demo.controller;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
@Controller
public class TestController1 {
@RequestMapping("/hello")
public String hello() {
//return "Hello World!!!"; //结果:报错 (type=Not Found, status=404)
//return "/addFolder"; //结果:跳转到“/addFolder路径”
//return "3.html"; //结果:跳转到"3.html"页面
}
}
3.2 TestController2.java
说明:
在控制类中使用@Controller、@RequestMapping及@ResponseBody注解
package org.it.Demo.controller;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;
@Controller
public class TestController {
@RequestMapping("/hello")
@ResponseBody
public String hello() {
//return "Hello World !!!";
//return "/addFolder"; //返回字符串
return "3.html";// 结果:返回字符串
}
}
3.3 TestController3.java
说明:
在控制类中使用@Controller、@RequestMapping及@ResponseBody注解
package org.it.Demo.controller;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController;
@RestController
public class TestControllerI {
@GetMapping(value="/addFolder")
public String addFolder() {
return "/hello"; //结果: 返回字符串
//return "aaaaaaaaaaaaaaaaaaaaa"; //返回字符串
}
}
上述完成后,右击App.java文件,选择Run As →Java Application
出现类似文字,则说明搭建成功
在浏览器地址栏输入localhost:8080/ + @RequestMapping(" ")注解中的值,查看效果。’
例如:localhost:8080/hello