【JavaEE】Spring(1)

server/2025/1/23 22:16:06/


一、什么是Spring和SpringBoot

Spring是Java应用程序的开发框架,其目的就是为了简化Java开发;SpringBoot是在spring框架的基础上构建的一个快速开发框架,其作用是进一步简化Spring程序开发

二、SpringBoot项目

2.1 创建项目

1. 设置jdk版本、项目名称等信息

2. 添加相关依赖

3. 设置项目保存路径

点击Create后就创建好了一个springboot项目

进入到项目页面,里面有一个pom.xml文件,文件中的信息不需要过度关注,我们主要看<dependencies> 标签里面的内容

	<dependencies><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web</artifactId></dependency><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-test</artifactId><scope>test</scope></dependency></dependencies>

spring-boot-starter-web:包含web应用开发所需要的常用依赖

spring-boot-starter-test:包含单元测试所需要的常用依赖

2.2 介绍目录

这里主要介绍一下src路径下的目录:

  • src/main/java:写Java代码的地方
  • src/main/resources/static:静态资源文件夹,通常放一些html、css、js文件
  • src/main/resources/application.properties:配置文件(后面再说)
  • src/test/java:写测试代码(后面再说)

2.3 运行项目

在 src/main/java 目录下的 SpringBootDemo1Application 类:

@SpringBootApplication 注解的类代表一个启动类,运行启动类下的main方法就是运行整个springboot项目,运行后控制台显示如下:

2.4 web服务器

在网络中我们讲过,浏览器和服务器之间的交互用到的就是http协议

常见的web服务器有:Apache、Tomcat、Jboss等,而 springboot 内置了Tomcat服务器(端口号为8080),所以我们可以更方便的进行web开发,即可以通过使用springboot项目来实现和浏览器的交互

接下来我们通过编写代码,使其在浏览器上输出 Hello World

启动项目后,在浏览器的地址栏中输入:http://127.0.0.1:8080/hello

url中127.0.0.1是一个环回IP,当客户端和服务器在一个同一个主机上就会使用这个IP,8080是Tomcat服务器的端口号;这里我们只看一下浏览器中的效果,代码的讲解放在后面

2.5 状态码

我们在讲解http协议时介绍过状态码,接下来我们以开发的角度再理解一下个别状态码

2.5.1 404

404表示服务器找不到请求的网页或用户访问资源失败,有两种常见情况导致该错误

【1】 url拼写错误

【2】注解拼写错误

2.5.2 500

500一般情况下就是我们写的代码(服务器代码)出现了问题

java">@RestController
public class UserController {@RequestMapping("/ret")public int  ret() {int a = 10 / 0;return a;}
}

2.5.3 无法访问页面

这种一般是项目未启动

三、SpringMVC

3.1 什么是MVC

MVC是Model、View、Controller的简称,是一种软件架构设计模式,可以理解成一种思想

  • View(视图):用户看到并与之交互的界面
  • Controller(控制器):决定视图发来的请求需要用哪个模型处理,决定模型返回的处理结果用哪个视图进行返回
  • Model(模型):应用程序的主体部分,用来处理请求

3.2 什么是SpringMVC

MVC是一种思想,SpringMVC就是对这种思想的具体实现,除此之外他还是一个web框架
总结:SpringMVC是实现了MVC思想的web框架

SpringMVC实现MVC时,结合了自身的一些特点,下面这个图更合适一点:

在之前创建SpringBoot项目的时候就用到了SpringMVC框架

SpringBoot项目通过添加SpringMVC框架来实现web功能,web功能就是服务器和浏览器交互的过程中,服务器给浏览器提供的一些功能,比如:处理用户交互、传输数据等


🙉本篇文章到此结束,下篇文章将具体学习一下SpringMVC


http://www.ppmy.cn/server/160867.html

相关文章

微信小程序实现自定义日历功能

文章目录 1. 创建日历组件实现步骤&#xff1a;2. 代码实现过程3. 实现效果图4. 关于作者其它项目视频教程介绍 1. 创建日历组件实现步骤&#xff1a; 创建日历组件&#xff1a;首先&#xff0c;你需要创建一个日历组件&#xff0c;包含显示日期的逻辑。样式设计&#xff1a;为…

54.DataGrid数据框图 C#例子 WPF例子

首先是绑定一个属性&#xff0c;属性名称无所谓。到时候看属性设置的啥&#xff0c;可能要改。 <DataGrid ItemsSource"{Binding Index_instance}"/> 然后创建INotifyPropertyChanged的类&#xff0c;并把相关固定的代码粘贴上去。 然后把这个目录类建好&am…

2K200Hz显示器哪个值得选?

眼花缭乱的显示器市场&#xff0c;究竟在2K200Hz显示器这个领域&#xff0c;哪个品牌的哪个型号值得选呢&#xff1f;今天就来给大家讲讲。 1.HKC G27H2Pro - 2K200Hz显示器哪个值得选 外观设计 - HKC G27H2Pro 2K200Hz显示器 整体风格&#xff1a;G27H2Pro 的外观充满电竞风…

【Tortoise-ORM】 高级特性与实战

文章目录 6. 迁移与数据库管理使用 Tortoise-ORM 与 aerich 进行数据库迁移管理安装 aerich配置 aerich创建和应用数据库迁移1. 创建迁移2. 查看迁移历史3. 应用迁移4. 回滚迁移 迁移常见问题 7. 事务管理使用 Tortoise 提供的事务管理1. 开始事务&#xff1a;2. 提交事务&…

react中hooks之useDebugValue用法总结

1. 基本概念 useDebugValue 是一个 React Hook&#xff0c;用于在 React DevTools 中为自定义 Hook 添加标签。它可以帮助我们在开发过程中更好地调试和理解自定义 Hook 的状态。 1.1 基本语法 useDebugValue(value, formatFn?)value: 要在 DevTools 中显示的值formatFn: (…

openssl 生成证书 windows导入证书

初级代码游戏的专栏介绍与文章目录-CSDN博客 我的github&#xff1a;codetoys&#xff0c;所有代码都将会位于ctfc库中。已经放入库中我会指出在库中的位置。 这些代码大部分以Linux为目标但部分代码是纯C的&#xff0c;可以在任何平台上使用。 源码指引&#xff1a;github源…

基于微信小程序的模拟考试系统设计与实现(LW+源码+讲解)

专注于大学生项目实战开发,讲解,毕业答疑辅导&#xff0c;欢迎高校老师/同行前辈交流合作✌。 技术范围&#xff1a;SpringBoot、Vue、SSM、HLMT、小程序、Jsp、PHP、Nodejs、Python、爬虫、数据可视化、安卓app、大数据、物联网、机器学习等设计与开发。 主要内容&#xff1a;…

Vue2:el-tree用scope slot为每一个节点添加一个鼠标悬浮时出现的右对齐的按钮

el-tree中,每一个节点后面添加一个按钮,响应除节点点击事件之外的操作,要求: 1、按钮在鼠标悬浮在该节点之上时才出现 2、按钮右对齐 实现如下。 1、为每个节点添加按钮 从官网说明来看,有两种方式添加按钮,render-content和 scoped slot,我使用的是scoped slot方式…