小白的springboot之路(一)、环境搭建、第一个实例
小白的springboot之路(一)、环境搭建、第一个实例
0- 前言
Spring boot + spring cloud + vue 的微服务架构技术栈,那简直是爽得不要不要的,怎么爽法,自行度娘,我们不废话,好了,下面直接上酸菜:
1- 环境搭建
涉及工具:
jdk jdk1.8.0_144
idea 2019.1.3
maven3.6.0
1.1- 安装JDK1.8:讲bin目录路径加入系统环境变量(方法自行度娘)
1.2- 安装idea并和谐掉:(和谐方法自行度娘,注意:idea2019.1.3成功和谐,2019.2无法和谐成功,请用2019.1或以下版本)
1.3- 安装maven:idea其实已经自带maven,但我们不用它,我们就爱用自己安装的;安装完在maven目录下新建一个repository文件夹作为maven相关下载的存储空间,如图:

1.4-更改idea的maven设置:
文件—设置—构建,执行,部署—构建工具—maven(我的idea已汉化为中文,喜欢洋文的自行找对应洋文菜单);然后如图三项更改为自己安装的maven:

1.5-安装Maven Helper 插件:非必须,但该插件对我们查看和处理依赖冲突很有方便,安装它;
文件—设置—Plugins;输入Maven Helper,就会搜素到它,然后点install安装它即可(不行就多刷新几次,国内局域网你懂的,连不上也不奇怪,多刷新几次就行),,如图(类似界面,我的因为已经安装,所以不显示Maven Hepler):

安装完重启idea,安装完成后,当我们打开项目的pom文件,就会多出一个tab出来方便查看和处理依赖冲突:

1.6 – idea设置(添加类和方法的注释模板):一个好的coder做好注释是基本素养,我们在idea中设置好模板让它自动添加注释就不用我们什么都自己敲键盘添加了,提高效率:
类注释模板:文件—设置—编辑器—文件和代码模板;选择class;在里面写入模板代码: 【注:各变量获取的值:${NAME}类名,${USER}电脑系统的用户名、${DATE}日期、${TIME}时间、${PROJECT_NAME}项目名】;如下
/**
* @description: TODO
* @author: anson
* @Date: ${DATE} ${TIME}
* @version: 1.0
*/

完毕,用法:添加类的时候,注释就会自动添加上去了
方法注释模板:
转到代码模板,在右边+号点template group新建一个分组;填上自己喜欢的名字:


然后,在自己那个分组中,继续点+号选第一个live Template;上面选择回车,下面填入*,然后在内容中填入:
* * @Author anson * @Description //TODO * @Date $date$ $time$ * @Param $param$ * @return $return$ */
;如图:

点击底下Define中选择Java:

点击编辑变量;选择相关取值表达式,如图:

点应用、确定;完毕;
用法:当我们在方法上敲了/*后,直接按回车键,就会自动补全注释了;
好了,环境全部搭建完毕,开始愉快的撸码之旅 吧;
2- 第一个例子
Idea中创建spring boot项目有两种方式,一种是spring initializr;一种是Maven;先简单说下两者的区别,spring initializr是通https://start.spring.io来自动生成springboot的项目,能自动帮我们生成相关项目文件夹和在pom中自动添加相关依赖;是最方便的方式,网上大部分介绍都是采用这种方式介绍;maven的方式只是生成基本的项目文件夹,需要自己手动创建部分文件和手动在pom中添加依赖;
我推荐采用maven的方式,理由:spring initializr虽然方便一点,但是它必须连https://start.spring.io这个国外网站去生成项目;众所周知,咱国内是局域网,加上最近贸易战政治因素影响,不管你是翻墙、代理还是啥,一百次能顺利连上一次,你已经是个幸运儿,况且这些方式都是有风险的,最近看新闻的人应该都知道了,XX公司因为用软件翻墙上国外网站,被处罚和判刑了;所以,私底下翻翻墙就算了,在公司,还是不要冒这险了;再者,maven构建项目,只是多了几步手动添加文件和pom依赖而已,结论:不要用spring initializr这种方式浪费时间,直接用maven的方式来构建spring boot项目,好,废话了一推,开始:

下一步,填入相关ID名称:

下一步,填入项目名称,完成

项目中生成如图结构:

Pom.xml是依赖配置文件,test文件夹是测试文件夹;main/Java是源码文件夹,在里面撸码;resource用来放置相关资源文件,如图片啊、配置文件啊、sqlmap文件等;这是个空的项目框架,好,我们开始写个hello world,几步就能搞定;
2.1、pom中添加相关依赖:如下,看注释:
<?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> <!-- 该几项为 项目生成时自动添加的 -->
<groupId>com.anson</groupId>
<artifactId>Demo6</artifactId>
<version>1.0-SNAPSHOT</version> <!-- 1、添加parent,添加以后依赖就可以不用带version版本号-->
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.0.5.RELEASE</version>
<relativePath/>
<!-- 从 spring-boot-starter-parent继承版本号 -->
</parent> <properties>
<!-- 2、指定JDK版本为1.8 -->
<java.version>1.8</java.version>
</properties> <dependencies>
<!-- 3、添加web和test的依赖 -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<version>2.0.5.RELEASE</version>
<scope>test</scope>
</dependency> </dependencies> <build> <!--4、添加Spring Boot插件 -->
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins> </build> </project>
2.2、添加启动类:先创建两个包:anson.controller、anson.service;然后在anson项目根目录下创建启动类app.java,设置为启动类,如下:
package anson; import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication; /**
* @description: 启动类
* @author: anson
* @Date: 2019/9/3 21:30
* @version: 1.0
*/ @SpringBootApplication //添加启动类注解
public class app
{
public static void main(String[] args)
{
SpringApplication.run(app.class,args); //添加SpringApplication.run方法
}
}
4、 添加配置文件,在resource中添加application.properties文件,如下:
#服务器配置
server.port=8090
完成,项目结构如下:

3、 运行、生成、部署
3.1、运行:
点击运行,即可运行项目,在浏览器中输入方法地址,即可看到结果,如图:


3.2、生成:idea右侧,maven—lifecycle-package即可打包项目,打包完成后,在左侧项目taget文件夹下,即生成了JAR包:


3.3、部署:spring boot项目内置了服务器,直接将生成的JAR包拷到相关服务器即可直接通过命令运行:
Java -jar <jar包路径>

好了,spring boot开发项目就是这么简单,下节继续;
小白的springboot之路(一)、环境搭建、第一个实例的更多相关文章
- ArcGIS API for JavaScript开发环境搭建及第一个实例demo
原文:ArcGIS API for JavaScript开发环境搭建及第一个实例demo ESRI公司截止到目前已经发布了最新的ArcGIS Server for JavaScript API v3. ...
- Spark+ECLIPSE+JAVA+MAVEN windows开发环境搭建及入门实例【附详细代码】
http://blog.csdn.net/xiefu5hh/article/details/51707529 Spark+ECLIPSE+JAVA+MAVEN windows开发环境搭建及入门实例[附 ...
- ArcGIS Pro开发Web3D应用(1)——环境搭建与初始实例
1.搭建环境 1.1 ArcGIS Web3D软件环境 ArcGIS Pro 2.0(必须) ArcGIS for Enterprise 10.5.1 (从10.5开始称呼为Enterprise)包括 ...
- android Jni NDK开发环境搭建及其简单实例的编写
android Jni NDK开发环境搭建及其简单实例的编写 由于工作需要,需要采用开发想要的JNI,由于之前没有接触过安卓的开发,所以更加网上的帖子,学习了下.遇到了些问题,然后总结下学习过程中 ...
- 我的Cocos Creator成长之路1环境搭建以及基本的文档阅读
本人原来一直是做cocos-js和cocos-lua的,应公司发展需要,现转型为creator.会在自己的博客上记录自己的成长之路. 1.文档阅读:(cocos的官方文档) http://docs.c ...
- 小白学习VUE第二课:环境搭建 VUE Node.js VSCode template模板
环境搭建 VUE Node.js VSCode template模板: 首先安装node:http://www.runoob.com/nodejs/nodejs-install-setup.html ...
- [微信营销企划之路]001.环境搭建(XAMPP+WeiPHP)
引言 本系列适合0基础的人员,因为我们就是从0开始的,此系列记录我们步入微信营销企划并进行开发的一些经验分享,望与君共勉!作为刚刚踏入微信队伍中的新人的我们,如果有什么不对的地方,还望不吝赐教. 在开 ...
- hadoop_spark伪分布式实验环境搭建和运行实例详细教程
hadoop+spark伪分布式环境搭建 安装须知 单机模式(standalone): 该模式是Hadoop的默认模式.这种模式在一台单机上运行,没有分布式文件系统,而是直接读写本地操作系统的文件系统 ...
- SSH框架总结(环境搭建+框架分析+实例源码下载)
一.SSH框架简介 SSH是struts+spring+hibernate集成的web应用程序开源框架. Struts:用来控制的,核心控制器是Controller. Spring:对Struts和H ...
随机推荐
- HTML5部分基础知识
web前端开发 一个XML的简单应用 代码如下: <?xml version="1.0" encoding="utf-8"?> <svg wi ...
- NOIP模拟 11
差点迟到没赶上开题 开题后看了T1,好像一道原题,没分析复杂度直接敲了个NC线段树,敲了个暴力,敲了个对拍,就1h了.. 对拍还对出错了,发现标记下传有点问题,改了以后对拍通过,就把T1扔掉看T2 觉 ...
- js内容溢出用省略号(...)表示
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...
- day 1 堆 hash 线段树 树状数组 冰茶姬 字典树 二叉查找树
来郑州的第二天,早上开始也没说什么就说了些注意安全,各种各样的注意安全... 冰茶姬: 原来再打食物链时看了一下冰茶姬,只注意了路径压缩,没想到还有什么按秩排序但确实快了不少... int find( ...
- 爬虫学习--Requests库详解 Day2
什么是Requests Requests是用python语言编写,基于urllib,采用Apache2 licensed开源协议的HTTP库,它比urllib更加方便,可以节约我们大量的工作,完全满足 ...
- jmeter-利用While Controller控制器实现接口报错时的重试机制
预期功能:在jmter脚本报错的时候重试,最多重试5次 1.添加While Controller 2.添加请求 3.添加断言,在断言不符合预期的时候加上代码:vars.put("status ...
- SpringBoot 源码解析 (二)----- Spring Boot精髓:启动流程源码分析
本文从源代码的角度来看看Spring Boot的启动过程到底是怎么样的,为何以往纷繁复杂的配置到如今可以这么简便. 入口类 @SpringBootApplication public class He ...
- Webpack 4 Tree Shaking 终极优化指南
几个月前,我的任务是将我们组的 Vue.js 项目构建配置升级到 Webpack 4.我们的主要目标之一是利用 tree-shaking 的优势,即 Webpack 去掉了实际上并没有使用的代码来减少 ...
- Vue img的src使用数据绑定不显示
不少人在vue的开发中遇到这样一个问题: img的src属性绑定url变量,然而图片加载失败. <img src="{{ imgUrl }}"/> 原因:写法错误 解决 ...
- 前端小白在asp.net core mvc中使用ECharts
对于在浏览器中绘制图形图表,目前有较多的js类库可以使用,如:ChartJS,Flot,canvasjs等,但是今天介绍的主角为国产图表库,并在apache孵化,就是大名鼎鼎的echarts. 前方高 ...