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项目时会报错(文件夹中会出现红色!) ...
随机推荐
- Jenkins操作学习 -- 配置及使用
一.jenkins基本配置 1.在Jenkins首页,点击Manage Jenkins,然后再点击Manage Plugins插件管理,安装必要的插件.这里我只需要安装Git,因为第一次初始化安装没成 ...
- MySQL(7)---存储过程
Mysql(7)---存储过程 存储过程接下来会有三篇相关博客 第一篇存储过程常用语法. 第二篇存储过程中的游标. 第三篇单独讲一个实际开发过程中复杂的真实的案例. 一.概述 1.什么是存储过程 概述 ...
- .net 调用C++ dll
.net C#调用C++ dll 主要分为以下的步骤 1.加载dll [DllImport("CallOtherLanguage.dll", EntryPoint = " ...
- 帝国cms提高网站网页打开速度的手段
1.减少页面HTTP请求数量 2.使用CDN(Content Delivery Network)网络加速 3.添加文件过期或缓存头 4.服务器开启gzip压缩 5.css格式定义放置在文件头部 6.J ...
- 何为http?何为RPC?
RPC(即Remote Procedure Call,远程过程调用)和HTTP(HyperText Transfer Protocol,超文本传输协议)他们最本质的区别,就是RPC主要工作在TCP协议 ...
- HTML中引用CSS的几种方法
HTML中引用CSS的方法主要有 行内样式 内嵌式 链接式 导入样式 行内样式 指写在标签里的Style元素的值 <p style="color: #FF0000;"> ...
- 微信小程序和支付宝小程序富文本使用
微信小程序使用的是 1. wxml 页面元素的最简单使用 <rich-text nodes="{{这是你的数据}}"></rich-text> 2. j ...
- Xcode 7.3 解决自定义类无法自动联想
正在苦拼的码友们,最近是不是觉得在写代码的时候很是头疼,甚至连个最基本的系统自带的语法啊.单词啊等等都不能联想了,之前习惯了的码友们,这个时候肯定会觉得是不是自己写错了,然后也往下翻了一大篇,还是找不 ...
- contentOffset、contentSize和contentInset
1.UIScrollView@property(nonatomic)CGPoint contentOffset;这个属性用来表示UIScrollView滚动的位置 @property(nonatomi ...
- Excel 扩展编程相关
============================产品分析============================Excel Automation Tools (Best of List)htt ...