我以前确实玩过一些java web,并且还写过java web,但是那是很久以前的事情了,而且悲催的是我还居然没有用过一个java框架。比如spring、Struts、hibernate之类的框架,我仅仅只是听说过,并未真正研究与使用过。由于工作的需要,我需要搭建一个可以跑起来的 reset api 服务,由此想起之前朋友给我推荐的spring-boot,听说很容易,不过我折腾了一下,环境搭建就花费了我不少时间。下面我就将这过程给大家说一说,当然请先确保你的电脑已经配置好了JDK环境。
环境配置
1、java环境配置
JDK配置、maven配置,JDK配置网上已经说得一大片了,再说了不论是搞后端还是搞前端开发基本也离不开JDK环境了,这里主要说一下maven配置。
首先到maven官方下载一个压缩包,https://maven.apache.org/download.cgi
解压后,放到任意位置,我将其放到了/Users/ubeing/Library/maven目录中,这个是MAC开发环境,如果你是windows开发环境,那你可以放到C盘或者其他盘都可以。
接着我们需要配置下环境变量啦,mac下的配置如下
1 | vim ~/.bash_profile |
2 | export MAVEN_HOME=/Users/ubeing/Library/maven |
3 | export PATH=$MAVEN_HOME/bin:$PATH |
windows下,请打开你的环境变量,新建一个MAVEN_HOME的变量,值为C:/Users/ubeing/Library/maven,找到path,添加$MAVEN_HOME/bin即可
配置完成后,windows下立即生效,mac下还需要执行source ~/.bash_profile,接着在终端(windows上叫命令提示符)输入以下命令验证一下:
1 | mvn -v |
如果出现了各种JDK、maven的版本号,那么说明成功了,如果没有出现或者提示找不到mvn命令,那就是配置还未成功,请重试一次。
2、开发工具IDE
推荐使用Intellij IDEA
3、创建spring-boot项目
点击file->new->project,如下图
接着选择左侧的Spring Initializr,右侧选择default,然后点击next,如图
修改相关的项目设置
完成后,直接next、next、next
编写相关代码
我是从spring-boot官方抄袭过来的一段代码,输出是hello world
在src/main下面的java文件import处增加
1 | import org.springframework.stereotype.*; |
2 | import org.springframework.web.bind.annotation.*; |
在public class下增加
1 | "/") ( |
2 | |
3 | String home() { |
4 | return "Hello World!"; |
5 | } |
6 | 保存,最终代码应该像这样: |
7 | |
8 | package com.example.demo; |
9 | |
10 | import org.springframework.boot.SpringApplication; |
11 | import org.springframework.boot.autoconfigure.SpringBootApplication; |
12 | import org.springframework.stereotype.*; |
13 | import org.springframework.web.bind.annotation.*; |
14 | |
15 | |
16 | |
17 |
|
18 |
|
19 | public class DemoApplication { |
20 | "/") ( |
21 | |
22 | String home() { |
23 | return "Hello World! "; |
24 | } |
25 | public static void main(String[] args) { |
26 | SpringApplication.run(DemoApplication.class, args); |
27 | } |
28 | } |
运行项目
这次可是到了运行项目的部分啦,刚开始我在run里面找了半天都没有发现该如何运行项目,原来我们使用了maven搭建的项目,可以直接使用maven进行运行,就像前端的npm一个鬼样。因此我们需要打开终端,进入到项目目录,输入如下命令进行运行:
1 | mvn spring-boot:run |
第一次运行,可能会需要一点时间,因为要下载某些依赖jar包,mvn看上去真的和npm一样,听说mvn出来的比npm早。
到这里可能搭建就完成了吗?并没有,我们还需要像前端一样,能实时热更新的效果啊,不然我们每次修改代码都要运行一次上面的代码多麻烦啊!
spring-boot热加载
Intellij中,需要设置两个地方,首先点击preferences,找到Build project automatically并勾选,如图
使用快捷键Shift+Ctrl+Alt+/,选择Registry
勾选上compiler.automake.allow.when.app.running
这样就设置完成了自动编译,想要验证一下是否可以使用,你得重启项目两次左右,或者点击项目右键使用run多跑几次之后,就可以真正的实现自动编译了。
为了保证此功能不出差错,建议再加入spring-boot-devtools到项目中,在项目中找到pom.xml文件,打开,增加以下代码:
1 | <dependencies> |
2 | ............ |
3 | <dependency> |
4 | <groupId>org.springframework.boot</groupId> |
5 | <artifactId>spring-boot-devtools</artifactId> |
6 | <optional>true</optional> |
7 | </dependency> |
8 | </dependencies> |
这下终于放心了,也可以开心的进行开发啦!