一、使用骨架创建maven的java工程
File→New→Project,左侧选择maven,勾选Create from archetype,archetype为原型的意思。
选择maven-archetype-quickstart,它是IDEA为maven提供好的创建java工程的骨架。点击next
点击next
点击next
点击finish,点击enabel auto-import
目录结构如下:
发现目录结构不完整,需要手动补齐resources目录。选中main,右键,New,Directory,输入名字resources.
发现已经识别resources目录为资源目录。
二、不使用骨架创建maven的Java工程
File→New→Project,左侧选择maven,不勾选Create from archetype,
点击next
点击next
点击finish,点击enabel auto-import
目录结构如下:
创建Java工程推荐使用这种方式。
三、使用骨架创建maven的web工程
File→New→Project,左侧选择maven,勾选Create from archetype,
选择maven-archetype-webapp,点击next
点击next
点击next
点击finish,点击Enable auto-import
目录结构如下:
发现main目录下没有Java文件,手动添加src/main/java,选择main右键→new→Directory→创建一个新的文件夹命名为java→ok
发现不是源码根目录,选择java,右键→mark directory as→sources root
四、使用SpringBoot搭建一个web工程
1、不使用骨架创建maven的java工程
注意:搭建web工程,不使用骨架创建maven的Java工程即可,不需要创建maven的web工程。
File→new→project
左侧选择maven,不勾选create from archetype,点击next
点击next
点击finish
Settings配置maven。
2、添加父工程坐标和添加web启动器
现在我们的项目与Spring Boot还没有什么关联。
Spring Boot提供了一个名为spring-boot-starter-parent的工程,里面已经对各种常用依赖(并非全部)的版本进行了管理,我们的项目需要以这个项目为父工程,这样我们就不用操心依赖的版本问题了,需要什么依赖,直接引入坐标即可!
<?xml version="1.0" encoding="UTF-8"?> <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> <parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>2.1.0.RELEASE</version> </parent> <groupId>com.zwh</groupId> <artifactId>zwh-springboot</artifactId> <version>1.0-SNAPSHOT</version> </project>
注意:所有的springboot工程都必须继承spring-boot-starter-parent。
为了让Spring Boot帮我们完成各种自动配置,我们必须引入Spring Boot提供的自动配置依赖,我们称为 启动器 。因为我们是web项目,这里我们引入web启动器,在 pom.xml 文件中加入如下依赖:
<?xml version="1.0" encoding="UTF-8"?> <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> <parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>2.1.0.RELEASE</version> </parent> <groupId>com.zwh</groupId> <artifactId>zwh-springboot</artifactId> <version>1.0-SNAPSHOT</version> <dependencies> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency> </dependencies> </project>
3、创建启动类
选择Java,右键→new→java class
点击ok
@SpringBootApplication public class MySpringBootApplication { public static void main(String[] args) { SpringApplication.run(MySpringBootApplication.class); } }
启动项目,控制台打印如下日志
Tomcat started on port(s): 8080 (http) with context path ''
端口为8080,web应用的名称是空的,即访问时不需要加应用的名称就可以访问到工程。
浏览器访问http://localhost:8080/,如下所示
表示服务器访问成功,否则会报一个找不到服务器的错误。
现在是能找到服务器,只是没有响应页面。
4、编写controller
@RestController public class QuickController { @GetMapping("/hello") public String quick(){ return "hello springBoot"; } }
浏览器访问:http://localhost:8080/hello,结果如下:
5、springboot工程的热部署
我们在开发中反复修改类、页面等资源,每次修改后都是需要重新启动才生效,这样每次启动都很麻烦,浪费了大量的时间,我们可以在修改代码后不重启就能生效,在 pom.xml 中添加如下配置就可以实现这样的功能,我们称之为热部署。
<?xml version="1.0" encoding="UTF-8"?> <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> <parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>2.1.0.RELEASE</version> </parent> <groupId>com.zwh</groupId> <artifactId>zwh-springboot</artifactId> <version>1.0-SNAPSHOT</version> <dependencies> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency> <!--热部署配置--> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-devtools</artifactId> </dependency> </dependencies> </project>
注意:IDEA进行SpringBoot热部署失败原因
出现这种情况,并不是热部署配置问题,其根本原因是因为Intellij IEDA默认情况下不会自动编译,需要对IDEA进行自动编译的设置,如下:
然后 Shift+Ctrl+Alt+/,选择Registry
6、创建配置文件application.properties
server.port=8888 server.servlet.context-path=/demo
浏览器访问:http://localhost:8888/demo/hello,结果如下:
7、项目根目录下添加.gitignore文件
HELP.md target/ !.mvn/wrapper/maven-wrapper.jar !**/src/main/**/target/ !**/src/test/**/target/ ### STS ### .apt_generated .classpath .factorypath .project .settings .springBeans .sts4-cache ### IntelliJ IDEA ### .idea *.iws *.iml *.ipr ### NetBeans ### /nbproject/private/ /nbbuild/ /dist/ /nbdist/ /.nb-gradle/ build/ !**/src/main/**/build/ !**/src/test/**/build/ ### VS Code ### .vscode/
五、IDEA快速创建springboot工程
File→new→project,左边选择spring initializer
点击next
点击next,左侧选择web,再勾选spring web
点击next
点击finish。
目录结构如下: