以简单的例子从头开始建spring boot web多模块项目(一)

server/2024/9/29 15:52:11/

目的:从头梳理,如何手工从头建立多模块项目。
步骤:
1、建立maven项目,类型:maven Archetype,Name:ParentDemo
选择JDK版本,Archetype:org.apache.maven.archetypes:maven-archetype-quickstart
版本为1.1
在这里插入图片描述
2、在pom.xml文件中,修改Packaging为pom,groupId修改为需要的名称:
org.rainpet

<groupId>org.rainpet</groupId><artifactId>ParentDemo</artifactId><version>1.0-SNAPSHOT</version><packaging>pom</packaging>

3、为了做依赖管理,防止spring模块的版本冲突,添加dependencyManagement,添加spring-framework-bom包,这样子以后添加包时就不用指定版本了:

<dependencyManagement><dependencies><dependency><groupId>org.junit</groupId><artifactId>junit-bom</artifactId><version>5.10.2</version><scope>test</scope></dependency><dependency><groupId>org.springframework</groupId><artifactId>spring-framework-bom</artifactId><version>5.3.33</version><type>pom</type><scope>import</scope></dependency><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-dependencies</artifactId><version>2.7.12</version><type>pom</type><scope>import</scope></dependency><dependency><groupId>io.spring.platform</groupId><artifactId>platform-bom</artifactId><version>2.0.1.RELEASE</version><type>pom</type><scope>import</scope></dependency></dependencies></dependencyManagement>

4、删除父项目parentDemo中的src目录
5、新建-模块,name:webDemo1
语言:java
构建系统:Maven
Parent:parentDemo
在这里插入图片描述

6、子项目webDemo1中的pom.xml文件中,添加依赖包:
spring-boot-starter-web
spring-boot-starter

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

7、webDemo1的pom.xml中添加build段

<build><plugins><plugin><groupId>org.springframework.boot</groupId><artifactId>spring-boot-maven-plugin</artifactId><version>2.6.13</version><configuration><mainClass>org.rainpet.Main</mainClass><layout>JAR</layout></configuration><executions><execution><goals><goal>repackage</goal></goals></execution></executions></plugin></plugins></build>

8、刷新项目,Main.java中,增加注解
@SpringBootApplication
main中,增加
SpringApplication.run(org.rainpet.Main.class,args);
即可以启动程序了,默认监听8080端口。

@SpringBootApplication
public class Main {public static void main(String[] args) {SpringApplication.run(org.rainpet.Main.class,args);System.out.println("Hello world!");}
}

9、在webDemo1项目的src中,确认是否有resources目录,没有的话,增加一个。
然后新建一个文件:application.properties
内容简单的加一个:

server.port= 8081

即可以更改监听端口
10、增加一个新包:org.rainpet.controller
11、controller中新增一个新类:DemoController
同时增加两个注解:
@Controller
@RestController
然后增加一个新类index,实现首页面访问即可

@Controller
@RestController
@RequestMapping("/demo")
public class DemoController {@ResponseBody@GetMapping("")public String index(){return "hello!";}
}

启动调试或者运行,即可看到效果:
在这里插入图片描述

12、也可以设置简单的get方法map,例:

@ResponseBody@GetMapping("name")public String name(@RequestParam(name="name",required = false,defaultValue = "张三")String name){return "hello "+name;}

在这里插入图片描述
13、简单的web后端程序已经可以跑起来了。


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

相关文章

Qml Image 截取一部分图片形式

Qml Image 截取一部分 &#xff1a;每次只显示一张图片的一部分&#xff0c;以有不同的状态显示 将这个图形每次只显示一部分出来&#xff1a; 想了好久&#xff0c;才找到实现的方法&#xff1a; 运行效果&#xff1a; 再来一个升级版的小程序&#xff1a; import QtQuick…

014、架构_配置文件_LDS(loadserver.ini)

loadserver.ini 文件说明配置文件“loadserver.ini”用于配置LoadServer模块运行时参数。文件位于用户“~/etc”目录下.配置文件分为: [general]段:配置LoadServer运行中数据文件目录。[transfer]段:配置Transfer运行参数,Transfer安装在数据分片用户下,以LoadServer进程名…

网络协议的基础知识

了解OSI模型和TCP/IP模型 在上一篇关于互联网的工作原理的数据传输中&#xff0c;我们了解到&#xff0c;两台计算机之间传输数据时&#xff0c;需要将数据封装成数据包。这些数据包中不仅包含我们实际要传输的信息&#xff0c;还包括很多额外的内容&#xff0c;比如目标地址、…

搭建 PXE 远程安装服务器和设置 Kickstart 无人值守安装

目录 搭建 PXE 远程安装服务器 1.安装并启用 TFTP 服务 2.安装并启用 DHCP 服务 3.准备 Linux 内核、初始化镜像文件 4.准备 PXE 引导程序 5.安装FTP服务&#xff0c;准备CentOS 7 安装源 6.配置启动菜单文件 7.关闭防火墙&#xff0c;验证 PXE 网络安装 设置 Kicksta…

MATLAB 沿任意方向分层点云(82)

MATLAB 沿任意方向分层点云(82) 一、算法介绍二、算法实现1.代码2.效果更多内容参考: MATLAB点云处理学习 一、算法介绍 沿着某个方向,将点云分割为多层,每层点云使用不同颜色进行可视化显示,具体代码和不同方向的分层效果如下: 二、算法实现 1.代码 % Load point c…

视频截取中的UI小组件

引言 视频截取在社交类 APP 中十分常见。有了上传视频的功能&#xff0c;就不可避免地需要提供截取和编辑的选项。如果我们过度依赖第三方库&#xff0c;项目的代码可能会变得异常臃肿&#xff0c;因为这些库往往包含许多我们用不到的功能&#xff0c;而且它们的 UI 样式和功能…

利用ce修改器进行漏洞挖掘(内存修改)

CE修改器原理 ce修改器可以修改内存数值&#xff0c;因为有些程序会把一些值放在本地&#xff0c;然后改动的时候访问的本地的值&#xff0c;修改之后&#xff0c;客户端服务器再次发生交互的时候&#xff0c;把修改的值发出去&#xff0c;可能会影响到服务器的数据&#xff0…

【Qt】dialog设置无边框之后,模态窗口失效,无法阻止与其他窗口交互

在Qt中自定义一个dialog 并且在显示这个对话框的时候&#xff0c;想要指定他的位置&#xff1a; 我在这个dialog的构造函数中设置了他为模态窗口 this->setModal(true);但是由于我的业务需求&#xff0c;我还设置了它为无边框窗口 this->setWindowFlags(Qt::WindowSta…