1 Springboot概念
springboot是spring快速开发脚手架,通过约定大于配置的方式,快速构建和启动spring项目。Springboot可以解决Spring的缺点:
复杂的配置
混乱的依赖管理
且具有以下特点:
快速开发Spring应用框架
内嵌tomcat和jetty容器,不需要单独安装容器,jar包直接发布一个web应用
简化maven配置,parent这种方式,一站式引入需要的各种依赖
基于注解的零配置思想
各种流程框架,spring web mvc\mybatis\spring cloud无缝整合。
2 入门案例
2.1 创建工程
(1)打开idea,点击New Project。
(2)选择Empty Project,新建空工程。
(3)命名为project。
(4)指定jdk版本等信息。
(5)创建一个模块
(6)选择maven
(7)填写模块名称
(8)打开pom.xml文件,添加以下内容并更新依赖。
<properties>
......
<java.version>1.8</java.version>
</properties>
<parent>
<artifactId>spring-boot-starter-parent</artifactId>
<groupId>org.springframework.boot</groupId>
<version>2.7.8</version>
</parent>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
</dependencies>
2.2 创建启动类
(1)新建启动类文件。
(2)填写启动类文件内容。
package com.horus;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
@SpringBootApplication
public class Application {
public static void main(String[] args) {
SpringApplication.run(Application.class,args);
}
}
2.3 创建控制类
(1)新建控制类文件controller.HelloController。
注意:controller包的路径一定要在启动类的包下。
(2)填写控制类文件内容。
package com.horus.controller;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController;
@RestController
public class HelloController {
@GetMapping("/hello")
public String hello(){
return "hello spring boot...";
}
}
2.4 试运行
启动类试运行成功出现Spring的图标后,浏览器输入:http://localhost:8080/hello, 会看到“hello spring boot...”表示一切正确。
3 整合jdbc
3.1 Spring全注解配置
Spring全注解配置主要靠java类和一些注解,比较常用的注解有:
- @Configuration:声明一个类作为配置类,代替xml文件。
- @Bean:声明在方法上,将方法的返回值加入Bean容器,替代<bean>标签。
- @Value:属性注入。
- @PropertySource:指定外部属性文件。
3.2 pom文件填写配置依赖
<?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>org.example</groupId>
<artifactId>demo</artifactId>
<version>1.0-SNAPSHOT</version>
<properties>
<maven.compiler.source>8</maven.compiler.source>
<maven.compiler.target>8</maven.compiler.target>
<java.version>1.8</java.version>
</properties>
<parent>
<artifactId>spring-boot-starter-parent</artifactId>
<groupId>org.springframework.boot</groupId>
<version>2.7.8</version>
</parent>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-jdbc</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
</dependency>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>5.1.46</version>
</dependency>
</dependencies>
</project>