开发第一个SpringBoot程序

使用命令创建Maven工程

复制代码
mvn archetype:generate -DgroupId=org.sang -DartifactId=chapter01 -DarchetypeArtifactId=maven-archetype-quickstart -DinteractiveMode=false

参数说明:

-DgroupId 组织Id(项目包名)

-DartifactId 项目名称或模块名称

-DarchetypeArtifactId 项目骨架

-DinteractiveMode 是否使用交互模式

项目构建

复制代码
<parent>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-parent</artifactId>
    <version>2.0.4.RELEASE</version>
</parent>

spring-boot-starter-parent 是一个特殊的Starter,提供了一些Maven的默认配置,同时还提供了dependency-management,可以使开发者在引入其他依赖时不必输入版本号,方便依赖管理。

默认配置如下:

  • Java版本默认使用1.8。
  • 编码格式默认使用UTF-8。
  • 提供Dependency Management 进行项目依赖的版本管理。
  • 默认的资源过滤与插件配置。

开发上虽然方便,但有些公司开发微服务项目或多模块项目时一般需要使用公司自己的parent,这个时候如果还想着进行项目依赖版本的统一管理,就需要使用dependencyManagement来实现了。

复制代码
<dependencyManagement>
    <dependencies>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-dependencies</artifactId>
            <version>2.0.4.RELEASE</version>
            <type>pom</type>
            <scope>import</scope>
        </dependency>
    </dependencies>
</dependencyManagement>

这样就不用继承spring-boot-starter-parent了,但Java的版本,编码的格式等都需要开发者手动配置。Java 版本的配置很简单,添加一个plugin即可:

复制代码
<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-compiler-plugin</artifactId>
    <version>3.1</version>
    <configuration>
        <source>1.8</source>
        <target>1.8</target>
    </configuration>
</plugin>

编码的配置也很简单,在 pom.xml 添加如下:

复制代码
<properties>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
</properties>
相关推荐
木头没有瓜15 分钟前
idea离线安装插件
java·ide·intellij-idea
一勺菠萝丶24 分钟前
Spring Boot + MyBatis/MyBatis Plus:XML中循环处理List参数的终极指南
xml·spring boot·mybatis
llwszx25 分钟前
Spring中DelayQueue深度解析:从原理到实战(附结构图解析)
java·后端·spring·delayqueue·延迟任务
述雾学java40 分钟前
Spring Cloud Feign 整合 Sentinel 实现服务降级与熔断保护
java·spring cloud·sentinel
保持学习ing40 分钟前
苍穹外卖day3--公共字段填充+新增菜品
java·阿里云·实战·springboot·前后端·外卖项目·阿里云文件存储
77qqqiqi1 小时前
正则表达式
java·后端·正则表达式
厦门德仔1 小时前
【WPF】WPF(样式)
android·java·wpf
大春儿的试验田1 小时前
高并发收藏功能设计:Redis异步同步与定时补偿机制详解
java·数据库·redis·学习·缓存
Gappsong8741 小时前
【Linux学习】Linux安装并配置Redis
java·linux·运维·网络安全
hqxstudying2 小时前
Redis为什么是单线程
java·redis