新建项目
IDEA菜单
“File” > “New” > “New Project”
https://start.spring.io/ , 本质还是用了官方Spring Initializr
Project Metadata
- Package, 尽量简单短, 因为会影响到包代码的路径深度, 如
com.example.demo
则会生成/com/example.demo
这样的长路径(IDEA优化了如下图的显示)
加载Spring Web依赖
完成后,自动下载依赖
加载依赖完毕后,新建HelloWorldController
需要注意,控制器的位置必须在.com.example.com
下, 体现约定大于配置
此时可以手动删除多余的文件
- .mvn
- HELP.md
- mvnw
- mvnw.cmd
控制器内容
package com.example.demo.controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
@RestController
public class HelloWorldController {
// 路由
@RequestMapping("/hello")
public String foo(){
return "bar";
}
}
运行测试
快捷键Shift + F10
, 或者点击工具栏上的运行按钮
在控制台中查看输出信息,调试网址是http://127.0.0.1:8080/hello
到此第一个Demo程序完成
打包
WSL安装JAVA运行环境
还没安装或者了解WSL的, 可以看看微软的文档, 适用于 Linux 的 Windows 子系统安装指南 (Windows 10) WSL系统(cmd > Ubuntu)
ubuntu@DESKTOP-P3R67B8:~$sudo apt install default-jre
ubuntu@DESKTOP-P3R67B8:~$ java -version
openjdk version "11.0.5" 2019-10-15
OpenJDK Runtime Environment (build 11.0.5+10-post-Ubuntu-0ubuntu1.118.04)
OpenJDK 64-Bit Server VM (build 11.0.5+10-post-Ubuntu-0ubuntu1.118.04, mixed mode, sharing)
打包
回到代码编辑器,双击Maven下的package
, 程序即可自动打包, 并且生成Target
目录
运行打包文件
进入WSL系统(cmd > Ubuntu),设置映射
sudo mkdir /java-project
sudo mount --bind /mnt/d/java-project/ /java-project/
java -jar /java-project/demo/target/demo-0.0.1-SNAPSHOT.jar
此时此刻,windows也多了一个java.exe
程序,正是刚刚启动的JAR包
测试地址依然是·http://127.0.0.1:8080/hello
, 这个也是WSL测试方便的地方!
第二次打包
修改pom.xml
version信息(俗称GVA, 这个后面再说), 继续点击maven
>package
加载依赖
前面依赖在创建项目的时候IDEA帮我们下载好了, 那么在打开一个已存在的项目时, 我们又怎么操作呢?
配置IDEA自动加载依赖
测试
删除pom中的依赖信息
此时, 你应该立刻可以看见HelloWorldController.java
开始报错了
手动下载依赖
Maven
>Reimport
修改启动提示图标
安装工具figletsudo apt-get install figlet
, 生成字符图形figlet hello world
保存到src/main/resources/banner.txt
再次启动项目