用Maven开发Spring Boot 项目

一、初识 Spring Boot

Spring Boot框架是一 套开源的后台开发框架, 继承了Spring MVC框架的前辈SSM框架的优秀特性,通过注解大幅减少程序员写配置的工作量。从企业开发角度来看,它提供了自动化配置,内嵌容器和兼容Maven等核心功能,有利于程序员专注于业务逻辑,而无须关注请求跳转、服务配置等的实施细节。

Spring框架包含如表所示的组件,能为开发JAVA 项目提供全面的支持,在WEB项目中会频繁地包

含请求跳转、前后端数据交互和请求拦截处理等动作,为减少程序员工作量,引入如下图所示的MVC框架。

在Spring体系中,较早实现MVC框架的有Struts-Spring-Hibernate(SSH)框架和Spring-Spring MVC+MyBatis(SSM)框架,为了进一步在保证功能的前提下优化项目的开发流程,Pivotal公司于2014年4 月发布了Spring Boot 的第一个版本,当下该框架已经升级到了3.2.1版本。

Spring Boot框架用注解替代了XML配置,而且自带了Tomcat等Web服务器,所以程序员用此框架开发Web项目时,不仅有较好的开发体验,更能降低开发配置失误而导致的风险。

二、搭建Spring Boot 开发环境

(1)安装和配置JDK开发环境

到JDK官网 https://www.oracle.com下载与计算机操作系统相匹配的版本,下载完成后,双击安装,并配置JAVA_HOME环境变量。

(2)安装IDEA 集成开发环境

到IDEA官网https://www.jetbrains,com/idea下载并安装。

(3)安装Maven工具

到Maven官网http://maven.apache.org/ 下载并安装

(4)Maven工具与IDEA集成

打开IDEA集成开发环境,单击File-Settings菜单,在Settings的搜索栏中搜索"Maven"并进行相关设置。

三、开发Spring Boot 项目

(1)创建Spring Boot 项目

双击IDEA图标,打开IDEA开发工具,如图所示:

单击上图所示的红色框线内按钮,如下图所示:

单击上图所示左侧的"Maven Archetype",然后再单击右侧的"New Project "

在上图红色框线内输入项目名称,在黄色框线内输入选择项目所在路径。

(2)通过 pom.xml文件引入依赖包

代码如下:

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>

    <groupId>org.example</groupId>
    <artifactId>myFirstSpringBootPrj</artifactId>
    <version>1.0-SNAPSHOT</version>

    <!--  导入springBoot版本和框架依赖 -->
    <parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>3.1.2</version>
        <relativePath/>
    </parent>
    <!--导入动态web场景启动器-->
    <dependencies>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>
    </dependencies>
   

    <properties>
        <maven.compiler.source>21</maven.compiler.source>
        <maven.compiler.target>21</maven.compiler.target>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    </properties>

</project>

编写好上述文件后,右击pom.xml,在弹出的菜单项中选中Maven-Reload project, 如图所示:

由此可以根据pom.xml中的定义导入项目所需的依赖包。成功导入后,就能在项目的External Libraries中看到导入的JAR包。

(3)编写项目的启动类

在src/main/java的默认路径下,新建名为demo的package, 并在demo路径下编写SpringBootApp.java,具体代码:

package demo;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
@SpringBootApplication
public class SpringBootApp {
    public static void main(String[] args){
        SpringApplication.run(SpringBootApp.class, args);
    }
}

@SpringBootApplication : Spring Boot启动器注解

(4)编写控制器类

在demo路径下编写控制器类Controller.java,具体代码如下:

package demo;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
@RestController
public class Controller {
    @RequestMapping("/hello") //标识一个方法,设置映射请求请求路径的具体要求信息
    public String sayHello(){
        return "Hello";
    }
}

@RestController: 控制器注解,@RequestMapping: 请求映射注解

(5) 运行并观察效果

完成开发后, 在打开SpingBootApp的情况下,单击下图红色框线内按钮,启动Spring Boot项目,右击SpringBootApp.java,在弹出的菜单项中的run命令也可以启动项目。启动后,出现如图所示:

Spring Boot项目默认工作在本地的8080端口,运行以后,在浏览器的地址栏中输入http://localhost:8080/hello后,在浏览器中输出如下图的"hello"字样。

四、Spring Boot 直观说明

(1)内嵌Tomcat 服务器,无须额外部署动作。

(2)默认监听本地的8080端口

(3)通过控制器监听本地8080端口上的请求,如果请求和控制器方法前的@RequestMapping注解匹配,则由该方法处理请求。

(4)以注解方式管理项目。

此文从搭建开发环境开始,到Spinrg Boot项目结束,详细介绍了Spring Boot 项目入门流程。

相关推荐
方圆想当图灵4 分钟前
缓存之美:万文详解 Caffeine 实现原理(下)
java·redis·缓存
栗豆包18 分钟前
w175基于springboot的图书管理系统的设计与实现
java·spring boot·后端·spring·tomcat
等一场春雨1 小时前
Java设计模式 十四 行为型模式 (Behavioral Patterns)
java·开发语言·设计模式
酱学编程2 小时前
java中的单元测试的使用以及原理
java·单元测试·log4j
我的运维人生2 小时前
Java并发编程深度解析:从理论到实践
java·开发语言·python·运维开发·技术共享
一只爱吃“兔子”的“胡萝卜”2 小时前
2.Spring-AOP
java·后端·spring
HappyAcmen2 小时前
Java中List集合的面试试题及答案解析
java·面试·list
Ase5gqe2 小时前
Windows 配置 Tomcat环境
java·windows·tomcat
大乔乔布斯2 小时前
JRE、JVM 和 JDK 的区别
java·开发语言·jvm
湫qiu3 小时前
带你写HTTP/2, 实现HTTP/2的编码
java·后端·http