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

相关推荐
weixin_727535621 分钟前
MinIO大文件上传深度拆解:从原理到生产落地的完整指南
java·中间件
Lyndon-李大鹏27 分钟前
QT-VS环境
开发语言·qt
摇滚侠39 分钟前
Java 全栈开发实战教程 课程笔记 34-36
java·笔记
芝士熊爱编程44 分钟前
创建型模式-单例模式
java·单例模式·设计模式
大模型码小白1 小时前
Spring AI 框架实战:Java 后端集成大模型的架构设计与工程落地
java·人工智能·python·spring
微学AI1 小时前
内网穿透的应用-把飞牛NAS变成家庭录像中心:EasyNVR部署与远程回放实战
开发语言·php
峥嵘life1 小时前
Android WiFi连接过程 wpa_supplicant 日志分析
android·开发语言·php
BerryS3N1 小时前
深度解析:从零构建生产级大模型 RAG(检索增强生成)系统全栈指南
开发语言·python·ai
weixin_BYSJ19871 小时前
「课设设计」springboot校园超市助购系统26449 (附源码)
java·javascript·spring boot·python·django·flask·php
栋***t1 小时前
从“纸质试卷”到“AI智能组卷”,麦塔在线考试系统如何重构出题逻辑?
java·大数据·人工智能·算法·重构