Maven项目转为SpringBoot项目
- 前言
- 创建一个maven项目前的软件的一些通用设置
- Maven仓库的设置
- 其他的设置
- 字符编码
- 编译器
- 注解支持
- 创建的Maven项目
- 修改为Spring Boot项目
- 修改pom.xml文件
- 修改启动类-Main
- 新建WAR包所需的类
- 添加核心配置文件
- 测试的控制器
- 最后整个项目的目录结构![在这里插入图片描述](https://img-blog.csdnimg.cn/e05a66d79f5541e1b601478407322d93.png)
- 测试
前言
听起来有点奇怪,但其实并不奇怪
因为有时候我们不能直接创建的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项目
配置完成