小白的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 ...
随机推荐
- Java虚拟机之垃圾回收
简述 Java与那些较传统的语言比如C++有个很大不同就是垃圾回收策略了.前者通常是虚拟机自动帮我们做了,而后者就需要我们手动来完成. Java虚拟机帮我们完成了垃圾回收,是不是意味着我们就不用完全去 ...
- Django学习day6——模板
在day4中,你可能已经注意到我们在例子视图中返回文本的方式有点特别. 也就是说,HTML被直接硬编码在 Python 代码之中. html = "<html><body& ...
- C函数库ctype.h概况
1 字符测试函数 1> 函数原型均为int isxxxx(int) 2> 参数为int, 任何实参均被提升成整型 3> 只能正确处理处于[0, 127]之间的值 2 字符映射函数 1 ...
- [考试反思]0803NOIP模拟测试12:偿还
嗯,rank5.没什么可评价的,高不算高低不算低. 一套好题,被我浪费了. 离上面280的大神差的有点远. 分机房的绝响就要来临. 越来越感觉自己变菜了,整体的能力水平在下滑. 说的不只是考试,包括平 ...
- CSPS模拟 76
前序遍历,中序遍历,后序遍历 说的都是根节点在前,根节点在中,根节点在后. 长记性!
- 【Canvas真好玩】从黑客帝国开始
前言 笔者之前有一段时间一直在学习Canvas相关的技术知识点,通过参考网上的一些资料文章,学着利用简单的数学和物理知识点实现了一些比较有趣的动画效果,最近刚好翻看到以前的代码,所以这次将这些代码实践 ...
- Python 基础 装饰器
今天把学过的装饰器的知识进行回顾一下,说到装饰器,第一反应就是这个东西呢就是用来装逼的,为啥这样说呢,是应为没有这个东西照样可以干活,大部分工作都是可以做的,不管咋样还是把学过的装逼器梳理一下吧. 一 ...
- 设计模式(Java语言)-单例模式
单例模式,简而言之就是在整个应用程序里面有且仅有一个实例,在程序的任何时候,任何地方获取到的该对象都是同一个对象.单例模式解决了一个全局的类被频繁创建和销毁的,或者每次创建或销毁都需要消耗大量cpu资 ...
- Kafka needs no Keeper(关于KIP-500的讨论)
写在前面的 最近看了Kafka Summit上的这个分享,觉得名字很霸气,标题直接沿用了.这个分享源于社区的KIP-500,大体的意思今后Apache Kafka不再需要ZooKeeper.整个分享大 ...
- Appium+python自动化(四十一)-Appium自动化测试框架综合实践 - 即将落下帷幕(超详解)
1.简介 今天我们紧接着上一篇继续分享Appium自动化测试框架综合实践 - 代码实现.到今天为止,大功即将告成:框架所需要的代码实现都基本完成. 2.data数据封装 2.1使用背景 在实际项目过程 ...