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:服务端问题

相关推荐
java资料站2 小时前
十一、评估测试
开发语言·人工智能·python
左手の明天3 小时前
SLIP 协议封装与解析详解:原理、C 代码与实战案例
linux·c语言·开发语言·c++
shuoshuohaohao3 小时前
MyBatis 小知识点
java·spring·mybatis
海上小飞龙3 小时前
【KMP算法-下篇】同一道题:Java 库函数 2600 微秒,手写 KMP 16 微秒
java·开发语言·算法
朝朝辞暮i3 小时前
C++ 第 12 课:局部变量、作用域、变量生命周期
开发语言·c++·算法
狗凯之家源码网4 小时前
淘客口令落地页生成器 PHP 版深度评测
开发语言·php
画绛集美术4 小时前
本地化部署LLM用于美术史问答:一间美术教室的实践记录
开发语言·php
谢亮_vipxieliang4 小时前
泛型擦除、通配符与 PECS 一次讲透
java·面试
八解毒剂4 小时前
【计组】中央处理器CPU
java·开发语言·计算机组成原理
FakeOccupational5 小时前
【电路笔记 信号】DBPSK 波形查找表+脉冲成形(升余弦+根升余弦滤波)
开发语言·笔记