什么是springboot

spring--简化java程序开发;springboot简化spring程序开发。

DAO(Data access object):提供应用程序调用数据库的接口

service:对DAO进一步封装

controller:接受请求,调用service

springboot有三个模块

①java

②resource

③test

scr/main/java:编写业务程序

scr/main/resources:存放静态文件和配置文件

scr/main/resources/static:存放静态资源。如图片、CSS、javascript

scr/main/resources/templates:存放 Web 页面的模板文件。共享资源,每个页面的样式、逻辑、框架,都是一样的

scr/test:编写测试程序

scr/test/java/application.properties(application.yml):存放程序的各种依赖模块的配置信息,比如服务端口、数据库连接配置等

.gitignore:使用版本控制工具 git 的时候,设置一些忽略提交的内容

Application.java:SpringBoot 程序执行的入口,执行该程序中的 main 方法,启动当前SpringBoot项目。

pom.xml:管理项目的依赖和构建

新建一个模块

group:域名

artifact:模块名

pom.xml

依赖(dependency)指的是我们项目中需要使用的第三方Jar包,a类引用了b类的b变量,这就是一个依赖的关系,所以构成依赖

war;jar(java achieve)包:是别人已经写好的一些类,然后将这些类进行打包,可以将这些jar包引入你的项目中,然后就可以直接使用这些jar包中的类和属性以及方法

Maven是一个跨平台的项目管理工具,Maven可以对Jar包进行统一的管理,包括快速引入Jar包,以及对使用的 Jar包进行统一的版本控制

maven的配置文件:POM.xml(Project Object Model.Extensible Markup Language)


<msg> <sender ="小明" /> <groupid = 112221 /> <type = test/> <content = "你吃过没" /> </msg>

通过勾选web自动填写


<?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> <!--继承springboot框架的一个父项目,组合了一套最优搭配的技术版本,所有自己开发的springboot都必须的继承--> <parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>3.0.7</version> <relativePath/> <!-- lookup parent from repository --> </parent> <!--当前项目的GAV坐标--> <groupId>com.example</groupId> <artifactId>demo4</artifactId> <version>0.0.1-SNAPSHOT</version> <!--maven项目名称,可以删除--> <name>demo4</name> <!-- maven项目描述,可以删除--> <description>Demo project for Spring Boot</description> <!--maven属性配置,可以在其他地方通过${}方式进行引用--> <properties> <java.version>17</java.version> </properties> <dependencies> <!--springboot框架web项目起步依赖,通过该依赖自动关联其它依赖,不需要我们一个一个去添加--> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency> <!--springboot框架的测试起步依赖,例如:junit测试,如果不需要的话可以删除--> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-devtools</artifactId> <scope>runtime</scope> <optional>true</optional> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-configuration-processor</artifactId> <optional>true</optional> </dependency> <dependency> <groupId>org.projectlombok</groupId> <artifactId>lombok</artifactId> <optional>true</optional> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-test</artifactId> <scope>test</scope> </dependency> </dependencies> <build> <plugins> <!--springboot提供的打包编译等插件--> <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> <configuration> <excludes> <exclude> <groupId>org.projectlombok</groupId> <artifactId>lombok</artifactId> </exclude> </excludes> </configuration> </plugin> </plugins> </build> </project>

scr/main/java

新创建的类要位于 Application(引导/启动类)同级目录或者下级目录,否则 SpringBoot 加载不到。

Controller

@RestController--标识它是一个请求处理类

@RequestMapping--指定当前方法处理哪个请求{请求路径}

  • 前端 请求路径(钥匙)或者携带者参数---->“服务器资源”(对应钥匙的门锁)

  • (一把钥匙开一扇门,门开了,能在屋子里做一些事情)

引导类

通过勾选web自动填写

main方法,在此启动整个项目

用@SpringBootApplication注解标注,会自动完成一些基础配置,扫描所有带有@Component注解的类,放入IoC容器中

scr/main/resource

核心配置文件

优先级:properties>yml>yaml

通过@Configuration注解创建Java Config类作为配置文件

YAML

Yet another markup language/yaml ain't markup language

直观的能够被电脑识别的数据序列化格式

yml每个“:”后需要一个空格

“=”后和value不能有空格

总配置文件

开发环境

生产环境

测试环境

properties


server.port=9090 spring.datasource.url=jdbc:mysql://localhost:3306/c003?characterEncoding=utf8 spring.datasource.username=root spring.datasource.password=20040131 #自定义键值对 mykey.key=springboot

其他配置文件:官方文档

Uniform Resource Locator:协议名://主机名[:端口号]/[路径名/…/文件名]

http://(协议)localhost(当前本机的服务):端口/请求路径

数据通讯

  • 1、找到对⽅ip

  • 2 、数据要发送到对⽅指定的应⽤程序上。为了标识这些应⽤程序,所以给这些 ⽹络应⽤程序都⽤数字进⾏了标识。为了⽅便称呼这个数字,叫做逻辑端⼝。

  • 3、定义通讯规则。这个通讯规则我们⼀般称之为协议

HTTP协议(hyper text transfer protocol)

浏览器和服务器交流的格式

tomcat:提供能够让别人访问自己写的页面的一个程序,在程序中加入tomcat,使程序能通过http进行访问

请求数据

响应数据

读取配置文件


//读取用户自定义的配置文件 @Value("${mykey.key}")//把{}中的对应的配置内容赋值到下面的key1 private string key1; @Value("${server.port}") private String port;

用@Value注解来实现

@Value注解使用“${}"的格式来读取


@RequestMapping("/sayHi") public String sayHi() { return key+"端口为”+port; }

打包项目

Postman

API:Application Programming Interface

五大类注解:

@Controller(控制器):用来控制前端提交的请求,验证用户请求的数据的正确性(安保系统)

@Service(服务):编排和调度具体的执行方法

@Repository:持久层,和数据库交互=DAO(Data Access Object)数据访问层

@Component:组件,存放工具类

@Configuration:配置项,项目中的配置

Logo

腾讯云面向开发者汇聚海量精品云计算使用和开发经验,营造开放的云计算技术生态圈。

更多推荐