用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 项目入门流程。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/405404.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

设计模式六大原则(一)–单一职责原则(C#)

文章目录 1. 什么是单一职责原则&#xff1f;2. 单一职责原则的定义3. 单一职责原则的重要性4. 单一职责原则的示例&#xff08;C#&#xff09;5.如何判断是否违反单一职责原则6. 单一职责原则的应用场景7. 总结 在软件开发领域&#xff0c;设计模式是解决常见问题的经典解决方…

RK3588J正式发布Ubuntu桌面系统,丝滑又便捷!

本文主要介绍瑞芯微RK3588J的Ubuntu系统桌面演示&#xff0c;开发环境如下&#xff1a; U-Boot&#xff1a;U-Boot-2017.09 Kernel&#xff1a;Linux-5.10.160 Ubuntu&#xff1a;Ubuntu20.04.6 LinuxSDK&#xff1a; rk3588-linux5.10-sdk-[版本号] &#xff08;基于rk3…

如何使用mmdetection训练实例分割模型?

安装 anoconda 从官方网站下载并安装。 配置环境 conda create --name openmmlab python3.8 -y conda activate mmdet 安装 PyTorch 注意&#xff1a;这个步骤很关键&#xff0c;否则后面会出问题。一定要确保自己电脑当前安装和配置的cuda版本。 使用命令&#xff1a;nvcc …

做数据采集,你真的了解PLC插槽号吗?

有很多PLC可以在系统里配置多个独立CPU&#xff0c;各自有自己的任务。也有一些PLC&#xff0c;虽然只有一个CPU&#xff0c;但是&#xff0c;其位置是可变的。外部进行数据采集时&#xff0c;首先要搞明白采集目标是哪个CPU&#xff0c;否则&#xff0c;就会张冠李戴&#xff…

【运维】从一个git库迁移到另一个库

工作目录&#xff1a; /home/java/hosts 10.60.100.194 脚本 hosts / hostsShell GitLab (gbcom.com.cn) 核心代码

FFmpeg的入门实践系列一

欢迎诸位来阅读在下的博文~ 在这里&#xff0c;在下会不定期发表一些浅薄的知识和经验&#xff0c;望诸位能与在下多多交流&#xff0c;共同努力! 江山如画&#xff0c;客心如若&#xff0c;欢迎到访&#xff0c;一展风采 文章目录 参考环境本系列的适用人群FFmpeg的简介FFmpeg…

win11安装python及pycharm与webots联合仿真

1、查看Windows系统 是否已安装Python及版本 【冰糖Python】Windows系统 查看已安装的Python版本_怎么确定windows上成功安装python-CSDN博客 好&#xff0c;确认没装下面装python37 2、安装python3.7.9 参考教程Python 3.82安装教程&#xff08;Windows11、超详细版&#x…

C语言基础(六)

一维数组&#xff1a; C语言中的数组是一种基本的数据结构&#xff0c;用于在计算机内存中连续存储相同类型的数据。 数组中的每个元素可以通过索引&#xff08;或下标&#xff09;来访问&#xff0c;索引通常是从0开始的。 数组的大小在声明时确定&#xff0c;并且之后不能改…

ansible搭建+ansible常用模块

ansible搭建 管理机安装ansible,被管理节点必须打开ssh服务 1.管理机安装ansible yum -y install ansible 2.查看版本 ansible --version ansible 2.9.27 3.查找配置文件 find /etc/ -name "*ansible*" /etc/ansible /etc/ansible/ansible.cfg 4.三台被管理机…

【中项第三版】系统集成项目管理工程师 | 第 15 章 组织保障

前言 本章的知识点预计上午会考1-2分&#xff0c;下午可能会考&#xff0c;一般与其他管理领域进行结合考查。学习要以教材为主。 目录 15.1 信息和文档管理 15.1.1 信息和文档 15.1.2 信息&#xff08;文档&#xff09;管理规则和方法 15.2 配置管理 15.2.1 基本概念 …

背包问题有前提

前言&#xff1a;这个有大前提的背包感觉不能用二进制拆分&#xff0c;不然搞不清楚 注意三维的顺便&#xff0c;第一维度是枚举物品&#xff0c;第二维度是倒序枚举空间&#xff0c;第三维度是枚举数量 题目地址 #include<bits/stdc.h> using namespace std;#define …

数据库:数据更新和视图

1 实验目的 &#xff08;1&#xff09;掌握SQL语言的数据更新功能&#xff1a; update 语句用于对表进行更新 delete 语句用于对表进行删除 insert 语句用于对表进行插入 &#xff08;2&#xff09;掌握对视图的操作&#xff1a; 视图的定义 视图的更新 基于视图的查询 …

基于推荐算法的景点攻略网站的设计与实现---附源码130855

摘 要 21世纪时信息化的时代&#xff0c;几乎任何一个行业都离不开计算机&#xff0c;将计算机运用于旅游景点分享也是十分常见的。过去使用传统广告方式对旅游景点进行推荐分享&#xff0c;造成了流程繁琐、难以维护&#xff0c;难于进准推荐给适合需求的人群等问题&#xff0…

详细扒一扒css的背景渐变(通俗易懂)

前言&#xff1a; CSS 渐变使您可以显示两种或多种指定颜色之间的平滑过渡。 CSS 定义了两种渐变类型&#xff1a; 线性渐变&#xff08;向下/向上/向左/向右/对角线&#xff09;径向渐变&#xff08;由其中心定义&#xff09; 下面来详细看看吧~ &#x1f308;&#x1f308;文…

qdma IP内部对于GT位置的约束

https://support.xilinx.com/s/question/0D52E00006hpphySAA/%E6%80%8E%E6%A0%B7%E7%AE%A1%E7%90%86pcie%E7%AD%89ip%E7%94%9F%E6%88%90%E7%9A%84xdc%E6%96%87%E4%BB%B6%E6%AF%94%E8%BE%83%E5%A5%BD?languageen_US GT约束的建议 qdma ip 对于GT的约束 # qdma ip 对于GT的约…

Gadmin极速开发平台,几分钟给你整一个OA系统出来

Gadmin极速开发平台 在企业信息化的大潮中&#xff0c;Gadmin极速开发平台以其独特的低代码开发模式&#xff0c;为企业提供了一套高效、灵活的解决方案。本文将介绍Gadmin平台的基本信息、核心特点&#xff0c;以及它如何帮助企业快速实现信息化建设。 软件简介 Gadmin是一个…

《黑神话·悟空》提高了多少游戏人的热情

《黑神话&#xff1a;悟空》的发布极大地提振了游戏人的热情&#xff0c;不管是国内游戏的带动&#xff0c;还是全球国产游戏的崛起&#xff0c;开启了国产3A游戏元年&#xff0c;下面我从主要两个大点来分析下。 玩家层面&#xff1a; 高度热情加强力追捧&#xff1a;从 202…

linux下搭建MySQL8.0.25单机

一、环境的前提与说明 VM虚拟机&#xff1a; cat /etc/redhat-releasecat /proc/version查看防火墙状态&#xff1a; systemctl status firewalld.service关闭命令&#xff1a; systemctl stop firewalld.service开机禁用防火墙自启命令 : systemctl disable firewalld.ser…

Veritas NBU8.3.0.2 安装部署环境备份实施介绍(篇一)

1、本次有两台NBU服务器&#xff0c;都是Windows Server 2016 Standard 2、一台作为Master Server角色&#xff0c;另外一台则作为Media Server角色 3、两台服务器均已加入域并关闭防火墙 4、后期备份客户端会有Linux和Windows系统&#xff0c;也会对接VCenter无代理备份虚拟…

FMS 2024:多家厂商CXL技术方案总览

CXL&#xff08;Compute Express Link&#xff09;联盟自成立以来一直是FMS闪存峰会的常客。在2022年的峰会上&#xff0c;CXL联盟宣布了CXL 3.0版本规范&#xff0c;随后在2023年的超级计算大会上推出了CXL 3.1版本。起初&#xff0c;CXL作为一种主机到设备的互联标准&#xf…