【JavaEE】Spring(1)


一、什么是Spring和SpringBoot

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

二、SpringBoot项目

2.1 创建项目

  1. 设置jdk版本、项目名称等信息
  1. 添加相关依赖
  1. 设置项目保存路径

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

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

XML 复制代码
	<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

相关推荐
陈随易3 小时前
在 VSCode 里,把项目一键部署到服务器
前端·后端·程序员
鱼樱前端4 小时前
我用 Claude Code 后,编码效率翻 3 倍。但更值钱的是别的。
前端·后端·ai编程
犀利豆5 小时前
Claude code tools 研究系列-开篇(AskUserQuestion)
后端
头发还在的女程序员5 小时前
医院陪诊管理系统怎么选择?——2026 年选型避坑与架构参考
java·开发语言·陪诊系统·陪诊app·医院陪诊陪护
CodeStats5 小时前
【Spring事务】Spring事务注解 @Transactional 完整体系:从 MySQL 隔离级别到 MyBatis 原理详解
java·spring·mybatis·事务·transactional
我命由我123456 小时前
Android 开发问题:为 PDFView 设置一个带有黑色边框的背景 drawable,但边框没有生效
android·java·java-ee·android studio·android jetpack·android-studio·android runtime
颜酱7 小时前
06 | 把 meta_config 同步进 MySQL(生成阶段)
前端·人工智能·后端
都叫我大帅哥8 小时前
从Python到Java:为什么企业级Agent最终会选择Java?
java·ai编程
wanderist.8 小时前
Lambda表达式在算法竞赛中的应用
java·开发语言·算法
IT_陈寒8 小时前
SpringBoot自动配置坑了我一周,原来问题这么蠢!
前端·人工智能·后端