JAVAEE-SpringBoot

Maven

Maven是⼀个项⽬管理⼯具,通过pom.xml⽂件的配置获取jar包,⽽不⽤⼿动去添加jar包,它简单,⽅便,提⾼我们的开发效率,减少我们的开发Bug

创建Maven项目

点击 Create,就创建好了⼀个Maven项⽬

Maven的核心功能

Maven提供了标准的,跨平台(Linux, Windows, MacOS等)的⾃动化项⽬构建⽅式,当我们开发了⼀个项⽬之后, 代码需要经过编译, 测试, 打包, 发布等流程, 每次代码的修改, 都需要经过

这些流程, 如果代码反复调试修改, 这个流程就需要反复进⾏, 就显得特别⿇烦, ⽽Maven 给我们提供了⼀套简单的命令来完成项⽬的构建.

依赖管理

上⾯说到,Maven是⼀个项⽬管理⼯具,通过pom.xml⽂件的配置获取jar包,⽽不⽤⼿动去添加jar包获取的jar包,其实就是依赖

html 复制代码
<dependencies>
    <!--⾥⾯放置项⽬的依赖坐标, 可为多个 -->
</dependencies>

添加后刷新即可,且支持依赖传递。即我们引入a,a生效的前提是引入b。Maven会帮我们把b也引入。

Maven 仓库

我们通过几行简单的代码就可以引入jar包,这是为什么呢?这就是Maven仓库,来管理jar包。Maven仓库分为两⼤类:本地仓库和远程仓库.其中远程仓库⼜分为中央仓库,私服和其他公共库

本地仓库在自己计算机中,会先查找本地仓库,没有才会访问中央仓库。

中央仓库:maven软件中内置⼀个远程仓库地址,就是中央仓库,服务于整个互联⽹.由Maven团队维护,全球唯⼀

加入私服,例如一些公司内的资源不能公开但员工要使用,就可以用到私服

第⼀个SpringBoot程序

使用idea创建即可

①SpringBoot版本,选择任意2.X的,这个版本会随着SpringBoot的升级⽽发⽣变化,不固定

3.X版本使⽤的是jdk17

②打勾表⽰创建项⽬之初,就引⼊的第三⽅依赖(框架,插件,组件等)

③所有引⽤的第三⽅框架

Spring Boot项⽬有两个主要的⽬录:

src/main/java:Java源代码

src/main/resources:为静态资源或配置⽂件

/static:静态资源⽂件夹,⽐如前期学的js,css,html等静态⽂件,不需要服务器数据进⾏绑定的

⻚⾯

/templates:模版资源⽂件夹,主要存放动态模板⽂件,⽐如JSP,Freemarker,Thymeleaf等需

要服务器动态渲染数据的⽂件

src/test/java:测试代码源代码

target:编译后的⽂件路径

pom.xml:maven配置⽂件

输出hello,Spring

java 复制代码
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
@RestController
    public class UserController {
        @RequestMapping("/sayHi")
        public String sayHi(){
            return "hello,Spring";
        }
}

Web服务器

浏览器和服务器两端进⾏数据交互,使⽤的就是HTTP协议,常⻅的Web服务器有:Apache,Nginx,IIS,Tomcat,Jboss等,SpringBoot内置了Tomcat服务器,⽆需配置即可直接运⾏。Tocmat默认端⼝号是8080,所以我们程序访问时的端⼝号也是8080

请求响应流程

访问出错

200:成功

4xx:客户端问题

5xx:服务端问题

相关推荐
我是Superman丶4 小时前
【异常】Spring Ai Alibaba 流式输出卡住无响应的问题
java·后端·spring
墨雨晨曦884 小时前
Nacos
java
Ralph_Y4 小时前
多重继承与虚继承
开发语言·c++
invicinble4 小时前
seata的认识与实际开发要做的事情
java
今晚务必早点睡4 小时前
写一个Python接口:发送支付成功短信
开发语言·python
jghhh015 小时前
基于C#实现与三菱FX系列PLC串口通信
开发语言·算法·c#·信息与通信
ada7_5 小时前
LeetCode(python)22.括号生成
开发语言·数据结构·python·算法·leetcode·职场和发展
喵了meme5 小时前
C语言实战练习
c语言·开发语言
imkaifan5 小时前
bind函数--修改this指向,返回一个函数
开发语言·前端·javascript·bind函数
乌日尼乐5 小时前
【Java基础整理】Java多线程
java·后端