SpringBoot 入门demo
创建SpringBoot项目方式一
(1)新建maven项目,不使用骨架。
使用maven管理依赖就行了,不必使用骨架(模板)。
(2)在pom.xml中添加
<!--springboot核心、基础的起步依赖,所有springboot项目都需要继承-->
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.2.4.RELEASE</version>
</parent> <dependencies>
<!-- web项目的起步依赖。不设置版本,由<paren>统一管理版本 -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency> </dependencies>
其实<parent>中的依赖换成spring-boot-starter也可以。
(3)新建包com.chy.controller,包下新建TestController
@RestController //相当于@Controller+@ResponseBody,也可以用@Controller,然后在业务方法上标注@ResponseBody
public class TestController { @RequestMapping("/handler")
ublic String handler(){
return "ok";
} }
@ResponseBody会自动将返回的基本类型、List、Map、pojo等类型转换为json对象、json数组,传给浏览器。
(4)在resource下新建springboot的配置文件appliction.properties
#配置url中的项目名
server.servlet.context-path=/springboot
(5)com.chy下新建类App,里面写一个main方法,标注为springboot的引导类
@SpringBootApplication //标识为springboot的引导类
public class App {
public static void main(String[] args) {
SpringApplication.run(App.class); //传入自身的class对象
}
}
引导类必须要有main方法。
启动springboot项目时,会自动扫描与引导类的整个父包。
也可以手动配置包扫描:
//如果要扫描多个包,写成字符串数组 @ComponentScan({"com.chy.controller","com.chy.service"})
@ComponentScan("com.chy.controller")
public class App{
public static void main(String[] args) {
SpringApplication.run(App.class);
}
}
因为后续还要使用自动配置,比如读取application.properties中的数据库连接信息构建数据源,所以还需要标识@EnableAutoConfiguration。
@SpringBootApplication 本身就包含了包扫描、自动配置这2个注解的功能。
(6)点击引导类左边的绿色三角形运行,控制台打印springboot的标志,并看到已经把项目部署到内置的tomcat中



/springboot是我们在springboot配置文件中配置的url中的项目名,配置了会自动部署到指定的项目中;如果不配置,默认为空串,直接部署到域名下。
(7)浏览器地址栏输入 http://localhost:8080/springboot/handler ,显示“ok”。
如果未在springboot配置文件中配置项目名,则直接在域名下 http://localhost:8080/handler 。
创建SpringBoot项目方式二
新建项目


原本web项目只能打包为war,不能打包为jar。
springboot的web项目既可以打包为jar,也可以打包为war,默认打包为jar。

勾选Web -> Spring Web。其它根据需要勾选。
在此处可以选择springboot的版本,如果此处没有公司要求的springboot版本,创建之后到pom.xml中的<parent>修改sringboot版本
IDEA已经在pom.xml中导入了所需的依赖,并自动生成了一些文件、包、类。

如果看不顺眼,可以将其它4个删掉,留下.iml、pom.xml即可。
springboot项目可以打包为war、jar,因为有引导类(主类),所以打包为jar也可以运行。
jar包中包含了项目所有的东西,包括依赖,直接运行jar包即可启动项目。
使用maven打包为jar:
mvn clean package #clean是清除之前编译产生的文件,默认打包之前会进行单元测试
mvn clean package -Dmaven.test.skip=true #跳过单元测试
执行jar:
java -jar xxx.jar #需配置jdk环境
SpringBoot 入门demo的更多相关文章
- SpringBoot 入门 Demo
SpringBoot 入门 Demo Spring Boot是由Pivotal团队提供的全新框架,其设计目的是用来简化新Spring应用的初始搭建以及开发过程.该框架使用了特定的方式来进行配置,从 ...
- SpringBoot入门Demo
前言:相信做java后台编程的童鞋都知道Spring家族,Spring作为我们项目中必备的框架.JavaSpringBoot号称javaEE的颠覆者,这引起了本Y的好奇,这才花费了一点时间,学习了下s ...
- SpringBoot入门Demo(Hello Word Boot)
Spring Boot 是由Pivotal团队提供的全新框架,其设计目的是用来简化新的Spring应用的初始搭建以及开发过程.该框架使用了特定的方式来进行配置,从而使开发人员不再需要定义样板化的配置. ...
- SpringBoot入门示例
SpringBoot入门Demo SpringBoot可以说是Spring的简化版.配置简单.使用方便.主要有以下几种特点: 创建独立的Spring应用程序 嵌入的Tomcat,无需部署WAR文件 简 ...
- 基于springboot构建dubbo的入门demo
之前记录了构建dubbo入门demo所需的环境以及基于普通maven项目构建dubbo的入门案例,今天记录在这些的基础上基于springboot来构建dubbo的入门demo:众所周知,springb ...
- springboot + kafka 入门实例 入门demo
springboot + kafka 入门实例 入门demo 版本说明 springboot版本:2.3.3.RELEASE kakfa服务端版本:kafka_2.12-2.6.0.tgz zooke ...
- springboot + mybatisPlus 入门实例 入门demo
springboot + mybatisPlus 入门实例 入门demo 使用mybatisPlus的优势 集成mybatisplus后,简单的CRUD就不用写了,如果没有特别的sql,就可以不用ma ...
- Springboot 入门及Demo
一:SpringBoot入门1.1:SpringBoot简介Spring Boot是由Pivotal团队提供的全新框架,其设计目的是用来简化新Spring应用的初始搭建以及开发过程.该框架使用了特定的 ...
- SpringBoot入门基础
目录 SpringBoot入门 (一) HelloWorld. 2 一 什么是springboot 1 二 入门实例... 1 SpringBoot入门 (二) 属性文件读取... 16 一 自定义属 ...
随机推荐
- elasticsearch ik解析器
ik解析器 1. ik解析器 The IK Analysis plugin integrates Lucene IK analyzer (http://code.google.com/p/i ...
- Java单例和多例
背景:最近在学习韩老师的笔记时候发现不是很了解单例和多例,于是通过网上查找资料的方式去学习. 设计模式:最佳的实践,是软件开发人员在软件开发过程中面临一般解决方案,也就是开发的经验总结. 单例模式(S ...
- 牛客跨年AK场-小sum的假期安排
链接:https://ac.nowcoder.com/acm/contest/3800/G来源:牛客网 题目描述 小 sun 非常喜欢放假,尤其是那种连在一起的长假,在放假的时候小 sun 会感到快乐 ...
- Mac 下 vim 常用命令
vim 三种模式:命令模式.插入模式.底线命令模式. 切换模式: 命令模式: 启动 vim 进入命令模式: i 切换到插入模式,以输入字符. x 删除当前光标所在处的字符. : 切换到底线命令 ...
- base64,base32bit加密解密
import base64 str='admin' str=str.encode('utf-8') #加密 bs64=base64.b64encode(str) #解密 debs64=base64.b ...
- ha-wordy-Write-up
信息收集 下载地址:点我 bilibili:点我 ➜ ~ nmap -sn 192.168.116.1/24 Starting Nmap 7.80 ( https://nmap.org ) at 20 ...
- MVC 拦截器
https://www.cnblogs.com/blosaa/archive/2011/06/02/2067632.html
- selenium webdriver 相关网站
ITeye:http://shijincheng0223.iteye.com/blog/1481446 http://ztreeapi.iteye.com/blog/1750554 http://sm ...
- 【转】issue management in your test project
What is Issue Management? Issue Management is the process to make others aware of the problem and th ...
- Linux命令:netstat命令
netstat功能:显示网络连接情况 netstat功能选项 -t:tcp协议的连接 -u:udp协议的链接 -l:监听状态的连接 -a:所有状态的连接 -p:连接相关的进程 -n:数字格式显示 -r ...