重学springboot day01 springboot基础

一:

(1).springboot 的简介:

  • ①springboot是spring家族中一个全新的框,用来简化spring应用程序的创建和开发过程,也可以说springboot能简化我们之前采用Springmvc+spring+Mybatis框架开发的过程;
    ②.在以往我们采用Springmvc+spring+Mybatis框架进行开发的时候,搭建和整合三大框架需要做很多的工作,如:配置web.xml配置spring.配置mybatis,并将它们整合在一起,而springboot框架对开发的过行了革命性的颠覆,抛弃了繁琐的xml配置,采用大量的默认配置简化我们的开发;
    ③.采用了springboot可以非常容易的和快速的创建spring框架的应用程序,他让代码变,配置,部署,监控变的简单;

(2).springboot的特性:

  • ①.能够快速的创建基于spring的应用程序 ②.能够直接使用java
    main方法启动内部的tomcat,jetty服务器运行springboot程序,不需要war包文件; ③.提供约定的start
    pom来简化Maven配置,让Maven变的更简单; ④.根据项目的Maven依赖培植
    ,springboot自动配置spring,springmvc等 ⑤.提供了程序的健康检查功能
    ⑥.基本可以完全不使用XML配置文件,采用注解配置

(3).springboot的四大核心:

  • ①自动配置:针对很多spring应用程序和常见的应用功能,springboot能自动配置;
    ②起步依赖:告诉springboot需要什么功能.他就能引入需要的依赖库;
    ③Actuator:让你能够深入运行中的springboot应用程序.一探springboot程序的内部信息;
    ④.命令行界面:这是springboot的 可选特性,主要针对Groovy语言使用

(4).springboot的开发环境:
可以自己选择则
(在eclipse中开发需要安装sts插件 自行搜索)
(5).第一个springboot程序:

  • ①.创建一个Springboot项目
    https://start.spring.io/这个是网页创建的方式
    在依赖中选择web pom.xml中的依赖:
<!-- 继承springboot的父级项目的依赖 -->
	<parent>
		<groupId>org.springframework.boot</groupId>
		<artifactId>spring-boot-starter-parent</artifactId>
		<version>2.1.4.RELEASE</version>
		<relativePath/> <!-- lookup parent from repository -->
	</parent>
	<groupId>com.springboot.demo</groupId>
	<artifactId>day01-springboot-web</artifactId>
	<version>0.0.1-SNAPSHOT</version>
	<name>day01-springboot-web</name>
	<description>Demo project for Spring Boot</description>

<!--属性配置 -->
	<properties>
		<java.version>1.8</java.version>
	</properties>
<!-- springboot开发web项目的起步依赖 -->
	<dependencies>
		<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>
			<scope>test</scope>
		</dependency>
	</dependencies>
<!-- bootspring提供的项目编译打包插件 -->
	<build>
		<plugins>
			<plugin>
				<groupId>org.springframework.boot</groupId>
				<artifactId>spring-boot-maven-plugin</artifactId>
			</plugin>
		</plugins>
	</build>

②.加入springboot的父级和起步依赖 上面有介绍
③.创建springboot的入口main方法入口是创建好的
④.创建一个springmvc 的controller 建一个包为controller


@Controller
public class HelloController {
	@RequestMapping("/boot/hello")
	public @ResponseBody String hello() {
	
	return "hello Spring boot";
	}
}
	⑤.运行springboot 的入口main方法

结束

(6).对一个程序的解析:

  • ①.springboot的父类依赖spring-boot-start-parent配置之后,当前的项目是springBoot项目(在pom.xml中找到父类依赖
    ctrl + 鼠标左键可以看依赖的包)
    ②.spring-boot-start-parent是一个特殊的start依赖,它用来提供相关Maven默认依赖,使用它之后,.常用的jar包依赖可以省去version(版本)配置;
    ③.springboot提供了哪些默认jar包的依赖,可以查看父类依赖的pom文件 ④.如果不想使用某个默认
    的依赖版本可以通过pom.xml文件的属性配置覆盖各个依赖项,比如覆盖spring版本
	<properties>
			<spring.veron>5.0.0.RELEASE</spring.veron>
		</properties>
  • ⑤.@SpringBootApplication注解是sprngboot 的核心注解,主要作用是开启spring的自动配置
    ⑥main方法是一个标准的java程序的main方法,主要作用是作为项目启动的入口;
    ⑦.@Controller及@responseBody 依然是我们之前的SpringMVC
    ,因为springboot的里面依然是使用我们的springmvc+spring+mybatis等框架

(7).springboot的核心配置文件:

springboot的核心配置文件用于配置springboot程序  有阆中格式的配置文件
	①.properties (键值对的properties属性文件配置方法)    
	②.yml文件(yml是一种yaml格式的配置文件,主要采用一定的空格,换行等格式排版进行配置;yaml是一种直观的你呢挂钩被计算机识别的数据格式化,容易被人类阅读,yaml类似xml但是语法比xml简洁的多;
	值与前面的冒号配置项必须有一个空格;
	yml后缀已可以使用yaml后缀)
例如:	.properties实例:
	server.port=8080 //端口号

server.context-path=/02-springboot //访问地址加上
.yml实例:

server:
   ___port: 8090
	___context-path: /02-springboot

(8).springboot自定义配置:
我们可以在springboot的核心配置文件自定义配置,然后下用如下注解去读取配置的属性
①.@Value注解:
②.@ConfigurationProperties
例如:在properties自定义配置
boot.name=上海
boot.location=浦东新区
然后用@Value注解:用于逐个读取自定义的配置如:

@Controller
public class ConfigInfoController {
	 @Value("${boot.name}")
	 private String name;
	 
	 @Value("${boot.location}")
	 private String location;
	 
	 
	 @RequestMapping("/config")
	 public @ResponseBody String configInfo() {
		return name +"--" + location;
		 
	 }
}

(注意:网页显示可能会乱码 那么将eclipse中的文件字码修改一下为utf-8)

然后用@ConfigurationProperties注解:用于逐个读取自定义的配置如:

@component
@ConfigurationProperties(prefix="")(里面写包名的前缀   如"com.$$$     $$$这部分就是前缀")
public class MyConfig{
	private String name;
	public Stirng getName(){
	return name;
}
	public viod setName(String name){
	this.name = name;
}
	 @RequestMapping("/config")
 public @ResponseBody String configInfo() {
	return configInfo.getName() + "---"+configInfo.getLocation();
	 
 }
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值