Springboot创建项目(idea版本)
一:概述
由于springboot项目,不管是java工程还是web工程都可以直接以jar方式运行,所以推荐创建jar工程,这里创建jar工程项目为例。
二:两种方式创建springboot项目
1.第一种方式
手动在idea中new一个新的项目。选择maven工程

完成的结构如图
然后在pom文件继承spring-boot-starter-parent依赖接口完成创建
<?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.javayihao.top</groupId> <artifactId>bootdemo</artifactId> <version>1.0-SNAPSHOT</version> <parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter</artifactId> <version>2.1.5.RELEASE</version> </parent></project>
2.第二种方式:快捷方式创建Springboot项目(推荐)
接着引入一些项目场景所涉及到的依赖statrter,也就是选择项目开发所用到的依赖。这里目前不选择,采取直接在pom文件使用手动导入的方式,完整的项目结构如图所示。
这样我么就创建完成了
三:Pom文件讲解
1.parent说明
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.1.5.RELEASE</version>
<relativePath/>
</parent>
当我们按住ctrl点击这个parent依赖可以看到如下
这个dependencies才是正真的boot版本仲裁中心,再次进入这个dependencies版本中心,可以看到许多的版本版本声明,
所以以后导入其他此处已经存在的依赖默认不需要写版本,但是dependencecies中没有声明的还需写出版本号
2.启动器
Boot会将一个个项目场景做成一个个starter启动器,项目中涉及到什么场景就引入什么启动器,项目中引入这些启动器之后,和这个starter相关的依赖也会被引入。我们也可以自定义自己的场景启动器,后续文章会介绍,这里我引入了测试和基本的启动器
再如这里引入web开发的启动器
https://docs.spring.io/spring-boot/docs/2.1.5.RELEASE/reference/htmlsingle/
3.运行项目
接下来我们写一个简单的案例,浏览器放回地址返回字符串hello world,新建一个controller包,场景IndexController类,处理前端请求。
@Controller
public class IndexController {
@RequestMapping("/index")
@ResponseBody
public String index() {
return "helloword!";
}
}
启动入口类,查看控制台,可以看到在8080端口启动完成

通过浏览器访问

4.启动程序讲解
xxxApplication作为启动类
SpringBootApplication应用标注在某个类上说明这个类是SpringBoot的主配置类,SpringBoot就应该运行这个类的main方法来启动SpringBoot应用
我们进入启动类。有个SpringBootApplication注解,当我们去掉这个注解,再次启动将会报错,我们进入这个注解,
再次进入SpringBootConfiguration注解,看到
其中的Configuration就是spring中的一个注解,用来标注当前这个类是配置类,但是在boot项目中推荐使用@SpringBootConfiguration标注当前类是一个配置类。
什么是配置类?相当于之前在ssm项目中的那些xml文件,在boot项目中将以类的方式替代xml文件,我们接着进入Configuration注解
我们也可以清楚的看见配置类也就是一个boot组件
EnableAutoConfiguration是开启自动配置,我们创建完项目没有任何的配置,直接就可以运行,就是因为EnableAutoConfiguration帮我们自动配置以前手动配置的相关东西,进入这个注解
@AutoConfigurationPackage自动配置包注解,再次进入可以看到@Import({Registrar.class}),这个是spring的底层注解,作用是给容器中导入一个组件,导入哪些组件由Registrar.class指定。
我们进入@Import({AutoConfigurationImportSelector.class})

boot会给容器导入这个场景开发需要的所有配置类,并配置好这些组件。我们就不需要配置
如果启动类和其他类不在同一个根包,还需要扫描包
Springboot应用常用的配置注解

5.修改默认的banner
我们启动项目可以看到
如何修改上面展示的banner
1.打开网址http://patorjk.com/software/taag/#p=display&h=3&v=3#f=4Max&t=qf%20Sping%20Boor
2.copy生成的字符串到一个txt文件中,将其命名为banner.txt,将这个文件拷贝到resoures目录中
公众号 java一号 更多java实战项目资料、技术干活。更重要的是小猿愿成为你编程路上的一个朋友!
用心写好每一篇文章,真心对待每一个读者
文章首发地址: www.javayihao.top
首发公众号: java一号
Springboot创建项目(idea版本)的更多相关文章
- 1 springboot创建项目
文章采用idea工具进行springboot项目创建 1点击 New Project 选择[Spring Initializr] 选择Jdk版本其他默认即可 点击Next 2添加项目信息 文章即使用默 ...
- <一> idea+gradle+springboot创建项目
转载自https://windcoder.com/springbootchutan-chuangjianxiangmu 前言 一边学习公司用到的技术,一边重构小程序后端,从而更好的理解公司搭建的框架. ...
- eclipse中使用maven创建项目JDK版本默认是1.5解决方法
请看解决方案: 1. 修改maven的settings.xml文件. 添加以下行,jdk版本改为自己需要的版本: <profile> <id>jdk-1.7</id> ...
- eclipse中使用maven创建项目JDK版本默认是1.5
1. 修改maven的settings.xml文件. 添加以下行,jdk版本改为自己需要的版本: <profile> <id>jdk-1.7</id> <ac ...
- springboot创建项目
Springboot作为轻量级快速开发受到无数java人的青睐,Spring Boot是为了简化Spring应用的创建.运行.调试.部署等而出现的,使用它可以做到专注于Spring应用的开发,而无需过 ...
- springboot创建maven多模块项目
SpringBoot创建maven多模块项目 项目结构 该项目名称为springboot-maven-multi,由springboot-maven-multi.user-dao.user-domai ...
- SpringBoot——IDEA使用 Spring Initializer快速创建项目【四】
前言 使用Spring Initializer快速创建项目 步骤 首先肯定是打开我们的IDEA的编辑器呀~ 创建项目 File -> New -> Project Spring Initi ...
- SpringBoot学习- 2、使用IDEA创建项目
SpringBoot学习足迹 上一节使用sts创建项目,感觉只是基于eclipse做了一些界面定制,还是改使用IDEA开发,为了跟上时代,将使用IDEA最新版本,安装各种最新插件. 1.下载IDEA ...
- 低版本eclipse导入高版本eclipse创建项目报错问题
例如用高版本eclipse创建的项目,会默认使用的是jdk1.8版本, 低版本eclipse创建项目,会默认使用的是jdk1.7版本. 此时导入高版本eclipse项目时会报错(文件夹中会出现红色!) ...
随机推荐
- 基于python的selenium常用操作方法(2)
9 多表单切换 在Web应用中经常会遇到frame/iframe表单嵌套页面的应用,WebDriver只能在一个页面上对元素识别与定位,对于frame/iframe表单内嵌页面上的元素无法直接定位.这 ...
- Redis for OPS 02:消息订阅和事务管理
写在前面的话 上一节谈了 Redis 的安装以及五种基本数据类型的一些简单的操作,本章节主要看看 Redis 的另外一些特征,虽然可能不常用,但是还是需要了解的.对于我们运维人员来讲,这些东西更像拓展 ...
- springcloud微服务多节点高性能、高可用、高并发部署
1. 共有三个服务 discovery服务,domain服务,gateway服务. discovery服务是用来注册其他服务的,作为服务治理用. domain服务是主业务服务. gateway服务是所 ...
- Redis深度历险,全面解析Redis14个核心知识点
本人免费整理了Java高级资料,涵盖了Java.Redis.MongoDB.MySQL.Zookeeper.Spring Cloud.Dubbo高并发分布式等教程,一共30G,需要自己领取. 传送门: ...
- SpringBoot源码解析系列文章汇总
相信我,你会收藏这篇文章的 本篇文章是这段时间撸出来的SpringBoot源码解析系列文章的汇总,当你使用SpringBoot不仅仅满足于基本使用时.或者出去面试被面试官虐了时.或者说想要深入了解一下 ...
- crm-2
1.分页 web必备的功能 1)批量制造测试数据 定义一个空列表用于存储 orm对象 ,models.表名(字段=...)创建orm对象append到列表 ,使用bulk_create(对象列表)一次 ...
- ABP进阶教程1 - 条件查询
点这里进入ABP进阶教程目录 添加实体 打开领域层(即JD.CRS.Core)的Entitys目录 //用以存放实体对象添加一个枚举StatusCode.cs //状态信息 using System; ...
- dijit/_WidgetBase
英文地址:http://dojotoolkit.org/reference-guide/1.10/dijit/_WidgetBase.html 介绍 dijit/_WidgetBase是Dijit包中 ...
- java 和 spring 的异步
spring 的 async 注解 https://www.baeldung.com/spring-async@Async will make it execute in a separate thr ...
- 更改docker默认网段
#本文档旨在说明创建docker时注意的事项:我们在局域网中使用Docker,最常遇到的一个困惑,就是有时候跨网段结果出现网络不通.原因是因为Docker默认生成的网关和我们的局域网网段有时候是冲突的 ...