SpringBoot入坑-项目搭建
对于学过三大框架的小童鞋,从今天开始给大家带来一套新的框架学习,相信对于做程序的小童鞋一定有所耳闻,作为下一代java开发框架springboot,减去了繁琐的xml配置,相信用过spring、status、hibernate的小童鞋对于大量的xml配置一定是心有余悸,当然啦spring支持注解,虽然减少了一些xml的配置,但是总的来说还是有些复杂。springboot作为下一代微服务开发框架,重点就在于简化了繁琐的xml配置,是的程序开发简化很多。好了废话不多说,下面我们开始今天的内容。
首先说明一下我这里使用的开发环境:jdk(java version "1.8.0_131")、maven(Apache Maven 3.5.0)、IDEA企业版(基础版不支持自动创建springboot功能)、mac笔记本电脑
接下来重点说一下maven的使用(引用自:https://www.jianshu.com/p/191685a33786):
1、下载maven安装包(http://maven.apache.org/download.cgi)
2、将下载的安装包解压,这里推荐的大家使用阿里云maven镜像,具体配置请移步》》》maven阿里云镜像
3、这是我们打开终端输入:mvn -version 回车,发现命令找不到,下面我们需要安装一下maven
4、打开Terminal
,输入以下命令,设置Maven classpath
$ vi ~/.bash_profile
5、添加下列两行代码,之后保存并退出Vi
:
export M2_HOME=/Users/robbie/apache-maven-3.3.
export PATH=$PATH:$M2_HOME/bin
注意:M2_HOME填写本地maven的解压地址
6、输入命令以使bash_profile
生效
$ source ~/.bash_profile
7、输入mvn -version
查看Maven
是否安装成功
8、如果遇到以下异常,重新编辑bash_profile
文件,增加export JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.7.0_11.jdk/Contents/Home
后,并重新运行$ source ~/.bash_profile
即可。
到这里我们的基础环境搭建好了,下面我们开始我的第一个springboot项目搭建:
1、打开我们的IDEA开发工具,点击创建项目:
选择spring Initiallzr,service URL选择的默认即可,点击下一步
2、修改我们的maven项目名称
3、选择web插件即可
4、到这里我们的springboot项目就搭建成功了
为了项目的简洁,我们可以删除无用的文件和文件夹:mvnw、mvnw.cmd、.mvn
5、下面简单查看一下项目结构
springboot1Application就是springboot主文件;application.properties是springboot的主配置文件;test文件夹是springboot的单元测试;
pom.xml是maven的主配置文件。
6、下面编写我们的第一个springboot单元测试
@RunWith(SpringRunner.class)
@SpringBootTest
public class Springboot1ApplicationTests { @Test
public void contextLoads() {
System.out.print("hello springboot!");
} }
7、下面再编写一个web接口
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RestController; @RestController
public class Hello { @RequestMapping(value = "/say", method = RequestMethod.GET)
public String say(){
return "hello springboot!";
} }
选中Springboot1Application文件,右键运行
8、在浏览器输入:localhost:8080/say
hello springboot!
到这里我们的第一个springboot项目就完成了。
9、补充一下关于springboot项目的另外两中启动方式:
a、打开终端进入项目目录下,然后输入:mvn 项目名:run命令,启动项目
b、打开终端进入项目目录下,然后键入:mvn install命令
进入项目target目录,键入:mvn ls命令
看到生成的jar包,下面我们通过java -jar 命令完成springboot项目的启动(java -jar springboot1-0.0.1-SNAPSHOT.jar)
好了到这里关于springboot入坑第一篇完成,关于springboot的Application.properties的使用,请持续关注。
以上内容如有错误,希望不舍赐教。谢谢
SpringBoot入坑-项目搭建的更多相关文章
- springboot(一).初识springboot以及基本项目搭建
初识springboot 以及基本项目搭建 由于新的项目需要搭建后台框架,之前的springmvc架构也使用多次,在我印象中springboot的微服务架构更轻量级更容易搭建,所以想去试试spring ...
- Idea+springboot入坑之路
环境准备 IDEA 社区版: 2019.3 jdk: 1.8.0_241 tomcat: 7.0.99 maven: 3.6.3 spring-boot:2.2.5.RELEASE 插件 spring ...
- IDEA SpringBoot多模块项目搭建详细过程(转)
文章转自https://blog.csdn.net/zcf980/article/details/83040029 项目源码: 链接: https://pan.baidu.com/s/1Gp9cY1Q ...
- ionic新入坑-环境搭建+新建项目+打开低版本项目处理
是的.我又双叒叕入新坑了.想我大学的时候web-app刚火起来.还帮忙做了我们学校医务室系统的web-app页面部分呢.时间太紧最后也没出个完整的版本.那时候只是用H5简单做了web部分.是想着用ph ...
- springboot 完整企业项目搭建实记
昨天搭建ssm框架时突然想到可以搭建springboot来完美解决配置复杂的问题,今天学习了一下springboot的搭建,在此记录一下搭建的过程和踩过的坑 这里给自己定一个该框架搭建完成的目标,如下 ...
- SpringBoot入坑-请求参数传递
前一篇我们探讨了关于springboot的配置文件和Controller的使用,本篇我们来一起探讨一下关于springboot如何传递参数的知识. 参数传递我们最常见的就是在url后通过?/& ...
- SpringBoot入坑指南之六:使用过滤器或拦截器
在Web应用中,常常存在拦截全部或部分请求进行统一处理的应用场景,如权限校验.参数校验.性能监控等. 在SpringMVC框架中,我们可以通过过滤器或拦截器实现相关功能,spring-boot-sta ...
- SpringBoot入坑-持久化操作
前面内容中我们已经了解到了SpringBoot关于参数传递的相关知识,本篇我们一起来学习一下SpringBoot关于数据库持久化操作的知识,这里我们使用JPA进行数据库的持久化操作. 首先由于我们需要 ...
- springboot+mybatis+thymeleaf项目搭建及前后端交互
前言 spring boot简化了spring的开发, 开发人员在开发过程中省去了大量的配置, 方便开发人员后期维护. 使用spring boot可以快速的开发出restful风格微服务架构. 本文将 ...
随机推荐
- 数据库服务器---Tps
事务处理系统:Transactionprocessingsystems(TPS) 提高事务处理效率与保证其正确性 在数据(信息)发生处将它们记录下来 通过OLTP产生新的信息 将信息保存到数据库中供其 ...
- PHP简单实现购物车
首先,判断是否登录.if(isset($_session['user_id'])){ 存在: 把用户id和商品id,加入购物车表}else{ 不存在:使用cookie把商品ID和主机IP放入一个数组 ...
- java 接口测试,使用excel做数据驱动(二)
承接上篇. 改变我们的测试驱动方式,灵活设置测试用例. 数据驱动测试 数据驱动测试的核心是: 测试数据与测试脚本分离,实现测试脚本参数化, 提高测试脚本的可重用性.在自动化功能测试中如果灵活使用数据源 ...
- 【NOIP2014提高组】联合权值
https://www.luogu.org/problem/show?pid=1351 既然是一棵树,就先转化成有根树.有根树上距离为2的点对,路径可能长下面这样: 枚举路径上的中间点X. 第一种情况 ...
- this的取值
在函数中this到底取何值,是在函数真正被调用执行的时候确定的,函数定义的时候确定不了. 情况1:构造函数 function Foo(){ this.name="王福朋" this ...
- Python笔记·第六章——集合 (set) 的增删改查及 copy()方法
简介: 集合是无序的,不重复的数据集合,它里面的元素是可哈希的(不可变类型),但是集合本身是不可哈希(所以集合做不了字典的键)的.以下是集合最重要的两点: 1.去重,把一个列表变成集合,就自动去重了. ...
- maven jetty struts异常 There is no Action mapped for namespace [/] and action name [] associated with context path
毕业设计中用maven jetty插件调试时,struts出现这个错误,直接http://localhost:8080 无法进入默认主页,但换tomcat就没问题,最后在这篇文章找到答案 http:/ ...
- HBase源代码分析之HRegion上MemStore的flsuh流程(一)
了解HBase架构的用户应该知道,HBase是一种基于LSM模型的分布式数据库.LSM的全称是Log-Structured Merge-Trees.即日志-结构化合并-树. 相比于Oracle普通索引 ...
- HTML学习笔记之三(localstorage的使用)
localstorage的使用 1.获取对象 var localstroage = window.localStorage; 2.存储值 localstroage.setItem('openid',' ...
- 腾讯云数据库团队:MySQL语句复制(SBR)的缺陷列举
作者介绍: 赵伟 腾讯云TDSQL数据库开发者 MySQL (这里的MySQL是指广义的mysql,包括oracle,mysql,percona,mariadb等)的Statement Based R ...