Maven项目转为SpringBoot项目
- 前言
- 创建一个maven项目前的软件的一些通用设置
- 创建的Maven项目
- 修改为Spring Boot项目
- 测试的控制器
- 最后整个项目的目录结构
- 测试
前言
听起来有点奇怪,但其实并不奇怪
因为有时候我们不能直接创建的SpringBoot项目,或者觉得自动生成多余的代码太多
那么我们可以先创建Maven项目,然后再自己引入依赖,添加一些文件,使之成为一个可用的SpringBoot项目了
创建一个maven项目前的软件的一些通用设置
先关闭项目,回到软件的初始界面,进入到设置中,如下所示

以下的设置修改后记得点击右下角的apply!!!!! 一定要记得!不然不会生效!
Maven仓库的设置

修改项目的maven仓库信息为指定仓库,否则每次创建的项目都会是默认的.m2仓库
其他的设置
字符编码

编译器
设置全局自动编译

设置编译器的版本 安装的哪个选哪个 我这里安装的时Java11

注解支持
部分插件可能需要注解支持

创建的Maven项目
新建项目,直接创建出一个Maven项目即可,基本就只有两个文件一个Main.java

一个pom.xml

修改为Spring Boot项目
修改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">
<!-- Maven的版本-->
<modelVersion>4.0.0</modelVersion>
<!-- 打包方式指定为war包-->
<packaging>war</packaging>
<!-- 项目的一些基本信息-->
<groupId>org.example</groupId>
<artifactId>NocosProjectResgister</artifactId>
<version>1.0-SNAPSHOT</version>
<properties>
<!-- 项目的源代码的Java版本-->
<maven.compiler.source>11</maven.compiler.source>
<!-- 项目编译生成的字节码的目标Java版本-->
<maven.compiler.target>11</maven.compiler.target>
<!-- 项目的源代码文件的字符编码-->
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
</properties>
<dependencies>
<!-- 引入spring boot-->
<dependency>
<groupId>org.mybatis.spring.boot</groupId>
<artifactId>mybatis-spring-boot-starter</artifactId>
<version>2.2.2</version>
</dependency>
</dependencies>
<!-- 定义项目的构建配置,包括编译、打包、测试、部署等方面-->
<build>
<resources>
<!-- 构建项目过程中被复制到输出目录中,以便它们可以在应用程序运行时访问-->
<resource>
<directory>src/main/java</directory>
<includes>
<!-- 项目内mybatis的dao配置文件-->
<include>**/*.xml</include>
</includes>
</resource>
<resource>
<directory>src/main/resources</directory>
<includes>
<!-- 资源文件-->
<include>**/*.*</include>
</includes>
</resource>
</resources>
<plugins>
<!-- spring-boot中用于支持maven打包的插件-->
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
<!-- 打包出来的名称 一般是项目的缩写外加版本号 -->
<finalName>npr</finalName>
</build>
</project>
修改完成以后 记得更新下依赖 点软件的右上角的那个更新图标
应该每次修改完pom文件,右上角都会出现那个小图标

修改启动类-Main
这里主要是加一下@SpringBootApplication注解 标识为应用程序入口 然后在main方法中启动程序
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
//标识为一个SpringBoot的应用
@SpringBootApplication
public class Main {
public static void main(String[] args) {
//启动应用
SpringApplication.run(Main.class);
}
}
新建WAR包所需的类
新建ServletInitializer类,层级结构如下

这是为了部署到外部的Servlet容器时,用于初始化Servlet容器(内置的不需要)
import org.springframework.boot.builder.SpringApplicationBuilder;
import org.springframework.boot.web.servlet.support.SpringBootServletInitializer;
//servlet容器的初始化 打包成war包必须
public class ServletInitializer extends SpringBootServletInitializer {
@Override
protected SpringApplicationBuilder configure(SpringApplicationBuilder application) {
return application.sources(Main.class);
}
}
添加核心配置文件
在resource目录下创建application.yml文件,该文件为Spring Boot项目的核心配置文件

以下为其内容、
#嵌入式web服务器的配置信息
server:
#程序所用端口为9000
port: 9000
tomcat:
#Tomcat容器的URI编码 确保能够正确解析包含非ASCII字符的URL
uri-encoding: UTF-8
测试的控制器
新建一个控制器HellController,用于在程序启动后用于测试,是否可以正常运行
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RestController;
@RestController
public class HellController {
@RequestMapping(value = "/hello" , method = RequestMethod.GET)
public String hello() {
return "Hello, World!";
}
}
最后整个项目的目录结构
测试
启动应用,在浏览器输入http://localhost:9000/hello 有以下显示视为成功

至此一个简单的Spring Boot项目配置完成








