目录
Springboot简介
(1)springboot介绍
spring Boot is the starting point for building all Spring-based applications. Spring Boot is designed to get you up and running as quickly as possible, with minimal upfront configuration of Spring.(参照官网介绍)
大概意思是:Spring Boot 是所有基于Spring开发的项目的起点。Spring Boot 的设计是为了让你尽可能快的跑起来Spring 应用程序,并且尽可能减少你的配置文件。
(2)springboot的优势
Springboot说到底其实也是基于spring的,仅是在基于spring框架的扩展。使用springboot,可以帮助我们简化sprig应用的初始搭建和开发过程。
1)创建独立的spring应用。
2)内部嵌套了Tomcat、jetty。
3)尽可能自动配置spring应用。
4)没有代码生成和xml配置要求。
Eclipse创建springboot项目
(1)安装好jdk1.8、eclipse高版本(此处是2019-12)、maven等工具。
(2)安装STS插件。
Eclipse运行或者说是新建springboot项目,需要下载插件spring tool suite。
在Help下找到“eclipse marketplace”,然后搜索“STS”(或者搜索spring tool suite),安装重启即可。(此处我安装的是spring tools 4插件。)
(3)创建springboot项目
new项目时,选择“Spring Starter Project”,接下来按照提示即可。
Springboot项目架构介绍
(1)pom.xml文件
<?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 https://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.3.1.RELEASE</version>
<relativePath/> <!-- lookup parent from repository -->
</parent>
<groupId>com.example</groupId>
<artifactId>springbootdemo</artifactId>
<version>0.0.1-SNAPSHOT</version>
<packaging>war</packaging>
<name>springbootdemo</name>
<description>Demo project for Spring Boot</description>
<properties>
<java.version>1.8</java.version>
</properties>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<scope>runtime</scope>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-tomcat</artifactId>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
<exclusions>
<exclusion>
<groupId>org.junit.vintage</groupId>
<artifactId>junit-vintage-engine</artifactId>
</exclusion>
</exclusions>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
</project>
备注:
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.3.1.RELEASE</version>
<relativePath/> <!-- lookup parent from repository -->
</parent>
这个parent标签是springboot的父类标签,有了这个,项目才是springboot项目。spring-boot-starter-parent是一个特殊的starter,用来提供相关的maven默认依赖。
(2)springboot项目的入口类
1)
以刚创建的项目为例,它的入口类为:
package com.example.demo;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
@SpringBootApplication
public class SpringbootdemoApplication {
public static void main(String[] args) {
SpringApplication.run(SpringbootdemoApplication.class, args);
}
}
其实,
对于springboot项目而言,其入口类一般都为*Application。这个入口类中有一个main方法,是标准的Java应用的入口方法。
2)注解@SpringBootApplication
@SpringBootApplication注解是springboot的核心注解,这个注解组合了@Configuration、@EnableAutoConfiguration、@ComponentScan三个注解。
(3)springboot项目中的配置文件。
在springboot项目中配置文件默认格式为application.properties或者application.yml,默认是放在resource文件夹下的,或者放在resource/config文件夹下也是可以读取的。
1)application.yml配置文件示例
server:
port: 8090
spring:
datasource:
driver-class-name: com.mysql.cj.jdbc.Driver
url: jdbc:mysql://127.0.0.1:3306/lijiang?useUnicode=true&characterEncoding=utf8&serverTimezone=UTC
username: root
password: 123456
redis:
database: 1 #Redis数据库索引(默认为0)
host: 127.0.0.1 #Redis服务器地址
#Redis服务器连接端口
port: 6379
#Redis服务器连接密码
password: foobared
jedis:
pool:
max-active: 1000 #连接池最大连接数(只用负数值表示没有限制)
max-wait: -1 #连接池最大阻塞等待时间(只用负数值表示没有限制)
max-idle: 10 #连接池中的最大空闲连接
min-idle: 2 #连接池中的最小空闲连接
#连接超时时间(毫秒)
timeout: 5000
#指定mybatis映射文件的地址
mybatis:
mapper-locations: classpath:mapper/*.xml
2)application.properties配置文件示例
###JDBC
spring.datasource.url=jdbc:mysql://localhost:3306/lijiang
spring.datasource.username=root
spring.datasource.password=123456
spring.datasource.driver-class-name=com.mysql.jdbc.Driver
备注:yml格式的配置文件有着可读性更强的树型结构,更加简洁些。yml格式的配置文件:不同等级之间用冒号隔开,次等级前用空格,不能使用制表符tab。如果冒号后面是值,则用一个空格将冒号和值隔开。
application.properties和application.yml配置文件都可以识别,采用其中的一个即可。如果一个目录下存在两种格式的配置文件,则会先读取properties格式的配置文件,后读取yml格式的配置文件。读取到的以第一次的为准。
测试springboot项目
(1)新建测试类
package com.example.demo.test;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController;
@RestController
public class SpringbootTest {
@Value("${name}")
private String name;
@Value("${age}")
private int age;
@GetMapping("/test")
public String test() {
return "姓名:"+name+",年龄:"+age;
}
}
(2)application.yml
server:
port: 8080
name: 李四
age: 25
(3)启动springboot项目
启动springboot项目(Run as Spring Boot App),当console控制台出现如下所示时,表示启动springboot项目成功。
(4)测试结果如下: