【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

相关推荐
云烟成雨TD2 小时前
Spring AI Alibaba 1.x 系列【69】Token 用量统计
java·人工智能·spring
JAVA9652 小时前
JAVA面试-并发篇 03-使用synchronized doublecheck实现单例有什么坑
java·单例模式·面试
在繁华处2 小时前
Java从零到熟练(四):面向对象基础
java·开发语言
JustHappy3 小时前
古法编程秘籍(二):什么是代码模块化?别背概念,把房间收拾明白就够了
前端·后端
小江的记录本3 小时前
【JVM虚拟机】堆内存分代模型:年轻代(Eden+Survivor)、老年代、元空间Metaspace(附《思维导图》+《面试高频考点清单》)
java·前端·jvm·后端·python·spring·面试
在繁华处3 小时前
Java从零到熟练(三):流程控制
java·开发语言·python
唐青枫4 小时前
Java Optional 实战指南:优雅处理空值与链式转换
java
一起学开源4 小时前
一文读懂 ReAct 范式:让 AI Agent 真正学会“思考+行动“
java·javascript·react.js·ecmascript·react·alibaba·智能体开发
逍遥德5 小时前
MQTT教程详解-04.SpringBoot集成MQTT(告别手动控制)
java·spring boot·物联网·中间件·iot·iotdb
语戚5 小时前
力扣 3161. 块放置查询:线段树解法(Java 实现)
java·算法·leetcode·面试·线段树·力扣·