1.下载安装jdk1.8
https://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html
2.配置好Java环境变量
- 右击“我的电脑”-->"属性"-->"高级系统设置"-->"高级"-->"环境变量"
- 在系统变量里新建"JAVA_HOME"变量,变量值为:C:\Program Files\Java\jdk1.8.0_60(JDK的安装路径);
- 找到path变量(已存在不用新建)添加变量值
.;%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin
- 在系统变量里新建"classpath"变量
.;%JAVA_HOME%\lib;%JAVA_HOME%\lib\tools.jar
注意:变量值之间用";"隔开。注意原来Path的变量值末尾有没有;号,如果没有,先输入;号再输入。
- 测试是否成功
命令行中输入:
java -version
3.下载eclipse到自己电脑
https://www.eclipse.org/downloads/
- 注意需要下载eclipse用于开发J2EE用的版本
- 如果下载的是eclipse的压缩包并且已经安装好JDK环境,解压后就可以直接使用,我的存放路径是D盘根目录
- 双击eclipse.exe后,可以看到蓝色的启动页面
- 建议,还是下载zip版本避免因为习惯问题无法使用新版本eclipse,顺便说下,可以下载中文语言包 地址https://www.eclipse.org/babel/downloads.php
- 启动后选择工作目录
4.通过eclipse市场,搜索spring开发工具,然后安装
- 通过:help->Eclipse Marketplace菜单进入
- 安装spring开发工具
- 注意安装spring开发插件需要再网络情况较好的状态下进行
- 阅读安装协议并开始安装
- 安装成功后需要重启eclipse
5.下载maven到自己电脑,安装好后配置好环境变量
http://maven.apache.org/download.cgi
6.设置maven环境变量
7.修改Maven的配置,主要为提高包的下载效率
根据自己的maven安装目录,D:\apache-maven-3.6.0\conf去找settings.xml,
添加镜像使用maven中央仓库
<mirrors>
<mirror>
<id>mirrorId</id>
<mirrorOf>central</mirrorOf>
<name>Human Readable Name for this Mirror.</name>
<url>http://central.maven.org/maven2/</url>
</mirror>
</mirrors>
修改maven默认使用的jdk版本
<profiles>
<profile>
<id>jdk18</id>
<activation>
<activeByDefault>true</activeByDefault>
<jdk>1.8</jdk>
</activation>
<properties>
<maven.compiler.source>1.8</maven.compiler.source>
<maven.compiler.target>1.8</maven.compiler.target>
<maven.compiler.compilerVersion>1.8</maven.compiler.compilerVersion>
</properties>
</profile>
</profiles>
8.修改好后再Eclipse里要配置maven,选择你改改修改的setting.xml
9.创建或导入springboot项目
1.eclectic 左上角 file -> new -> maven project 出现下图默认就好,也可以根据自己需要进行修改 ,点next。
2.点击next出现下图,选择ora.apache.maven.archetypes maven-archetype-quickstart 1.1 然后点击next
3.上图点击next后弹出下图,设置group id 和 artifact id 其他默认就好,然后点击finish
4.项目创建完成后,在项目上右键创建Source Folder输入src/main/resources,然后在resources文件夹下面创建application.properties文件
6.删除src/main/test下自动生成的测试类和包后项目结构如下
7.修改配置pom.xml
注意pom.xml修改后,需要选择项目右键->Maven->Update Project将改变引用到项目
<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">
<!-- 模型版本。maven2.0必须是这样写,现在是maven2唯一支持的版本 -->
<modelVersion>4.0.0</modelVersion>
<!-- 公司或者组织的唯一标志,并且配置时生成的路径也是由此生成,maven会将该项目打成的jar包放本地路径:/com/neuai -->
<groupId>com.neuai</groupId>
<!-- 本项目的唯一ID,一个groupId下面可能多个项目,就是靠artifactId来区分的 -->
<artifactId>iotcloud1</artifactId>
<version>0.0.1-SNAPSHOT</version>
<!-- 打包的机制,如pom,jar, maven-plugin, ejb, war, ear, rar, par,默认为jar -->
<packaging>jar</packaging>
<!--项目名称 -->
<name>iotcloud1</name>
<!--项目主页的URL, Maven产生的文档用 -->
<url>http://www.neuai.net/</url>
<properties>
<!--使用JDK的版本 -->
<java.version>1.8</java.version>
<!--项目编码 -->
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
</properties>
<!-- 定义通用的springboot版本号 -->
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.2.1.RELEASE</version>
</parent>
<!-- 定义本项目的依赖关系 -->
<dependencies>
<!--Spring Boot核心,包括自动配置支持,日志和YAML -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter</artifactId>
</dependency>
<!--web应用基本环境配置 -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<!-- Spring测试模块 -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
</project>
8.创建启动类IotCloudApplication和控制类IndexController
9.IotCloudApplication 类如下:
package com.neuai;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.context.annotation.ComponentScan;
@SpringBootApplication
@ComponentScan(basePackages={"com.neuai.controller"})
public class IotCloudApplication {
public static void main(String[] args) {
SpringApplication.run(IotCloudApplication.class, args);
}
}
IndexController类如下:
package com.neuai.controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
@RestController
@RequestMapping("/")
public class IndexController {
@RequestMapping("index")
public String index() {
return "Hello Iot!";
}
}
10.创建好后在IotCloudApplication 类里面右键run as 启动
11.启动完成后,在浏览器上输入http://localhost:8080/index
到此为止一个简单的spring boot 项目创建完成,这也是我们创建物联网云平台的第一步,千里之行始于足下,完成第一步的感觉是不是很好,接下来我们还要迎接更进一步的挑战逐步实现我们的业务逻辑。
在开发中可能会有这样的情景。需要在容器启动的时候执行一些内容。比如读取配置文件,数据库连接之类的。SpringBoot给我们提供了两个接口来帮助我们实现这种需求。这两个接口分别为CommandLineRunner和ApplicationRunner。他们的执行时机为容器启动完成的时候。
这两个接口中有一个run方法,我们只需要实现这个方法即可。这两个接口的不同之处在于:ApplicationRunner中run方法的参数为ApplicationArguments,而CommandLineRunner接口中run方法的参数为String数组。