SpringBoot helloworld

一、创建示例

1、创建应用

在这里插入图片描述

快速创建,通过idea的项目引导来创建springboot。

在这里插入图片描述
在这里插入图片描述

2、了解 基本的依赖包

打开pom.xml查看自动引入的 dependency。

spring-boot-starter-parent
<parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>2.1.8.RELEASE</version>
        <relativePath/> <!-- lookup parent from repository -->
 </parent>

作为springboot的parent,控制了groupId是 所有导入的springboot的包的版本号

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

这是springboot的 核心启动器,包含了大量自动配置、日志处理等操作,托管程序运行

spring-boot-starter-test
<dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-test</artifactId>
            <scope>test</scope>
</dependency>

springboot单元测试的依赖启动器,包括了对测试的自动配置等操作

spring-boot-devtools
 <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-devtools</artifactId>
            <scope>runtime</scope>
            <optional>true</optional>
 </dependency>

热部署 依赖项,可以通过 编译工具自动编译 或者手动编译,达到不需要重启web 应用,直接部署的效果。

lombok
<dependency>
            <groupId>org.projectlombok</groupId>
            <artifactId>lombok</artifactId>
            <optional>true</optional>
        </dependency>

很方便的java工具包能简化java代码,提高开发效率。比如setter、getter方法,有参无参构造函数等。

还有一个 插件:

spring-boot-maven-plugin
<build>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
            </plugin>
        </plugins>
    </build>

加入这个插件后,项目可以直接使用maven命令来操作程序,比如可以通过maven package,直接将项目打成jar包等。

3、了解项目的基本结构

在这里插入图片描述

4、关键注解

@SpringBootApplication

对于helloworld,程序运行其实依靠的是 spring-boot-starter-web这个最基本的包,
而项目中对于这个包的引用,实际上 只需要靠 main方法所在类上的注解
@SpringBootApplication 。这样就自动完成了 对 spring的配置、监听器的启动等很繁琐的操作。

package com.hkjs.hellospringboot;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;

@SpringBootApplication
public class HellospringbootApplication {

    public static void main(String[] args) {
        SpringApplication.run(HellospringbootApplication.class, args);
    }
}

@RestController

表示当前类是一个 mvc 中的Restful API 处理类,可以响应http 请求

@RequestMapping
用来注解controller类中的方法,用来表示通过什么 路径来请求 当前方法

package com.hkjs.hellospringboot.controller;


import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RestController;

@RestController
public class HelloController {

    @RequestMapping(name = "/hello",method = RequestMethod.GET)
    public  String hello(){

        return "hello , world!";
    }
}

直接运行后,结果如下:
在这里插入图片描述

二、Maven详细介绍

spring boot 也是支持maven,我们到目前通过idea 来创建 spring boot项目,其实结构都是maven结构,所以需要先了解maven。

1、maven是什么。

maven是一个项目构建工具,通过maven可以统一项目构建后的目录结构,另外maven还项目的全生命流程都提供支持。
1、用来管理整个项目的生命周期的,比如刚才提到的通过maven命令
mvn complie 来编译
mvn package 来给项目打包,
2、可以依赖包管理
前面说的pom.xml 就是maven的重要组成部分。通过添加依赖项,可以快速的做到在项目中对jar包统一管理。方便使用。

2、安装

从官网上下载: http://maven.apache.org

1、设置JAVA_HOME环境变量,指向JDK安装目录。
2、下载Maven并解压到指定目录。
3、设置M2_HOME环境变量,指向刚才的解压目录。
4、添加M2环境变量,指向Maven的解压目录下的bin目录。
完成后,可以在cmd命令行中验证是否成功:mvn -version。

由于我一直使用 IDEA来开发,所以不需要安装插件,如果是Eclipse的话,需要安装插件

3、配置

其实IDEA本身已经支持了Maven,在开发工具中,可以打开maven的窗口,可以通过这个来管理maven项目。
在这里插入图片描述
通过这个窗口,可以管理项目的生命周期,可以看到依赖项和插件的导入情况。
可以通过这里来配置maven
在这里插入图片描述
点击右上方的按钮,在弹出的窗口中配置。
主要看下 maven的 包保存路径 和 配置文件路径。
Repository :包保存路径,从Remote Repository 下载下来之后,就放在本地路径下。
setting file:
考虑到 直接从国外的repository 中下载会有问题,配置中需要加入镜像

 <mirrors>
  
  <mirror>
    <id>alimaven</id>
    <name>aliyun maven</name>
    <url>http://maven.aliyun.com/nexus/content/groups/public/</url>
    <mirrorOf>central</mirrorOf>
</mirror>
<mirror>
    <id>alimaven</id>
    <mirrorOf>central</mirrorOf>
    <name>aliyun maven</name>
    <url>http://maven.aliyun.com/nexus/content/repositories/central/</url>
</mirror>
 
<mirror>
    <id>ibiblio</id>
    <mirrorOf>central</mirrorOf>
    <name>Human Readable Name for this Mirror.</name>
    <url>http://mirrors.ibiblio.org/pub/mirrors/maven2/</url>
</mirror>
<mirror>
    <id>jboss-public-repository-group</id>
    <mirrorOf>central</mirrorOf>
    <name>JBoss Public Repository Group</name>
    <url>http://repository.jboss.org/nexus/content/groups/public</url>
</mirror>
 
<mirror>
    <id>central</id>
    <name>Maven Repository Switchboard</name>
    <url>http://repo1.maven.org/maven2/</url>
    <mirrorOf>central</mirrorOf>
</mirror>
<mirror>
    <id>repo2</id>
    <mirrorOf>central</mirrorOf>
    <name>Human Readable Name for this Mirror.</name>
    <url>http://repo2.maven.org/maven2/</url>
</mirror>
  <!-- 
  <mirror><id>aliyun</id><name>aliyun Maven</name><mirrorOf>*,!cloudera,!spring-releases</mirrorOf><url>http://maven.aliyun.com/nexus/content/groups/public/</url></mirror>
 -->  

  <!-- mirror
     | Specifies a repository mirror site to use instead of a given repository. The repository that
     | this mirror serves has an ID that matches the mirrorOf element of this mirror. IDs are used
     | for inheritance and direct lookup purposes, and must be unique across the set of mirrors.
     |
    <mirror>
      <id>mirrorId</id>
      <mirrorOf>repositoryId</mirrorOf>
      <name>Human Readable Name for this Mirror.</name>
      <url>http://my.repository.com/repo/path</url>
    </mirror>
     -->
  </mirrors>
4、基本命令

-v:查询Maven版本

检查maven是否安装成功。

Maven安装完成之后,在命令行输入mvn -v,若出现maven信息,则说明安装成功。

compile:编译

将java源文件编译成class文件

test:测试项目

执行test目录下的测试用例

package:打包

将项目打成jar包

clean:删除target文件夹

install:安装

将当前项目放到Maven的本地仓库中。供其他项目使用
这里通过maven就管理了项目的生命周期。

5、Pom.xml

Maven项目中,最重要的文件了。下面看下 pom 文件的重要组成部分

parent
继承父项目,通过这个 元素,maven项目一般都构建成多模块化,可以通过继承,让子模块很方便导入父项目 内容

modelVersion
POM的版本号。默认就好

groupId
项目的唯一标识

artifactId
项目的标识符,它和group ID一起唯一标识一个构件

packaging
项目的打包方式,由jar、war、pom、ear等模式

version
项目的版本号

name
项目名

url
项目介绍文档路径

description
项目描述

prerequisites
项目的前提,必要条件

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

dependencies 是很重要的依赖项的意思。其实就是项目要导入的包,maven一大重要特性就是可以通过repository来方便各个依赖包的导入
通过 grouppId 和 artifactId来唯一指定特定的包。

<dependencyManagement>    
  <dependencies>    
   
   <dependency>    
    ......    
   </dependency>    
  </dependencies>    
 </dependencyManagement>  

dependencyManagement 和 dependencies的区别就是 这里只是声明的,让子项目继承用的,子项目一旦继承,不需要版本号,直接使用这里的版本号。
但是注意的是,这里只是声明,不会真正导入,子项目中引用了才会导入

<build>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
            </plugin>
        </plugins>
    </build>

这里是插件

另外还有个比较重要的 pluginManagement 和 之前的 dependencyManagement类似。

三、配置文件介绍

1、格式

springboot 支持两种格式的配置文件 .yml 和 .properties 默认是 .properties,如果目录下 同时存在 .properties和.yml那么 使用.properties

2、位置

顺序如下
1、config目录(项目根目录中config目录下)
2、项目根目录
3、项目resources目录中config目录下
4、项目的resources目录下

3、语法

yml采用 : 的访问方式 包名中的_ 改用骆驼命名来实现。:后要加一个空格。
默认示例:

server:
  port: 8082
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值