SpringBoot2.x--入门篇--01--HelloWorld

很多人说,学习springboot至少需要spring基础,servlet基础等等,笔者不敢苟同。凡是有一定java基础的人,都可以直接学习springboot,当学到原理和源码时,通过查缺补漏的方式补充需要的其他内容即可,并无必要非耗时学完其他内容再来学习,本篇教程尝试让只有java基础的人也能快速掌握springboot(当然还需要掌握基础的idea使用),并且吃透原理和源码。

Talk is cheap, show me the code.

我们直接来感受一下开箱即用的helloworld。

(一) Hello SpringBoot

1 准备maven环境

安装maven,配置环境变量,本文不再赘述,安装完成后建议在maven安装目录下的conf/setting.xml配置如下全局jdk。

 

<profile>  
        <id>jdk-1.8</id>  
        <activation>  
            <activeByDefault>true</activeByDefault>  
            <jdk>1.8</jdk>  
        </activation>  
        <properties>    
            <maven.compiler.source>1.8</maven.compiler.source>    
            <maven.compiler.target>1.8</maven.compiler.target>    
            <maven.compiler.compilerVersion>1.8
         </maven.compiler.compilerVersion>    
        </properties>  
    </profile> 

 

 

2 创建maven项目

在idea中点击File—New—Project—Maven(左侧菜单栏),选中project sdk为1.8以上版本(官方要求必须为1.8以上版本),然后Next。

 

 填写artifactId(项目名)和groupId(项目包名),点击Next,在弹出的新窗口中,点击Finish。

 

 生成一个标准的maven项目目录,形如:

src目录下,分为三部分,main文件夹,test文件夹,和pom.xml配置文件。

main文件夹用来存放编写的代码,以及代码调用的资源。

test文件夹用来存放测试代码。

pom.xml用来管理需要的依赖。

 

3  引入依赖

打开pom.xml,编写我们需要的依赖

    <!--继承超级父pom  springboot的父依赖   声明版本-->
    <parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>2.1.8.RELEASE</version>
    </parent>

    <dependencies>
        <!--web项目的依赖-->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>
    </dependencies>

 

4 创建入口类和业务处理类

在main/java/com/demo目录下,创建一个程序入口类

/**
 * @SpringBootApplication 
 * 注解声明这是一个springboot项目
 * 当前类是程序入口类
 */
@SpringBootApplication
public class DemoApplication {
    
    /**
     * SpringApplication是spring启动类
     * 调用静态方法run,将入口类和main函数的参数传递进去
     */
    public static void main(String[] args) {
        SpringApplication.run(DemoApplication.class,args);
    }
}

 

在main/java/com/demo/controller目录下,创建一个业务处理类

/**
 * @Controller 声明这是一个业务控制类
 */
@Controller
public class DemoController {

    /**
     * @RequestMapping("/hello") 
     * 指定url请求和代码处理方法的映射关系
     * @ResponseBody
     * 指定返回格式为json
     */
    @RequestMapping("/hello")
    @ResponseBody
    public String hello(){
        return "Hello world";
    }
}

 

5 启动验证

在程序入口类中,右键run,启动项目,看到如下日志代表启动成功

这代表我们通过tomcat容器,启动了端口为8080的服务,可以进行访问了。 

 

打开浏览器,访问localhost:8080/hello,  看到响应“Hello world”。

 一点都不对应“万事开头难”这个俗语,开篇so easy。

 

)热部署

目前idea的使用比例大大大幅的超过了eclipse,作为一个走在时代前端的猿儿,这里只介绍idea的使用方式。

大概分三步(请自行脑补宋丹丹老师的口音),第一步,把依赖引进来;第二步,把setting配置上;第三步,把注册中心找出来。

下面具体说一下,

1 依赖引入

springboot提供了开发工具包,供我们热部署使用,依赖如下

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

 

想要热部署生效,还需要在ide里将自动编译相关的配置选中,使得代码更新后能够及时热部署

 2 setting配置

查找并勾选build project automatically

 

 

  3 注册中心registry配置

 快捷键 Ctrl + Shift + Alt + /  -》 选择registry -》 勾选compiler automake allow when app running

 

 

 至此,就可以做到热部署了,把前面的hello world改成任意字符,试试看。

 

打包

 开发完成项目后,当然要打包部署,这一步springboot也提供了便捷的插件,先引入进来。

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

然后通过mvn package命令就可以打成jar包了

 

启动

我们之前讲了在入口类中右键可以直接启动项目,这种方式列为第一种。

 

 增加了上述的打包插件后,在右侧的maven窗口,可以看到spring-boot插件,插件中有一个spring-boot:run命令,可以直接启动项目,此为第二种。

 

 通过插件打包的jar包,可以使用java -jar命令直接执行,这种方式通常用于生产环境的启动,此为第三种。

 

posted @ 2019-10-23 11:38  若愚小姐  阅读(352)  评论(0)    收藏  举报