spring boot 系列之一:spring boot 入门

最近在学习springboot,感觉确实很好用,开发环境搭建和部署确实省去了很多不必须要的重复劳动。接下来就让我们一起来复习下。一、什么是springboot?springboot是干嘛

大家好,又见面了,我是全栈君。

 

最近在学习spring boot,感觉确实很好用,开发环境搭建和部署确实省去了很多不必须要的重复劳动。

接下来就让我们一起来复习下。

一、什么是spring boot ? spring boot是干嘛的?

  Spring Boot是由Pivotal团队提供的全新框架,其设计目的是用来简化新Spring应用的初始搭建以及开发过程。该框架使用了特定的方式来进行配置,从而使开发人员不再需要定义样板化的配置。通过这种方式,Spring Boot致力于在蓬勃发展的快速应用开发领域(rapid application development)成为领导者。

二、spring boot 入门实例

  接下来将通过一个Hello 实例来看下怎么使用spring boot 搭建一个应用。

  1. 创建maven项目
    1. spring boot 系列之一:spring boot 入门

       

    2. spring boot 系列之一:spring boot 入门

       

    3. spring boot 系列之一:spring boot 入门

       

    4. 创建的目录结构spring boot 系列之一:spring boot 入门

       

  2. 配置pom文件
    spring boot 系列之一:spring boot 入门
    spring boot 系列之一:spring boot 入门

    <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">
        <modelVersion>4.0.0</modelVersion>
        <groupId>spring-boot</groupId>
        <artifactId>study</artifactId>
        <version>0.0.1-SNAPSHOT</version>
        <!-- 指定parent项目 -->
        <parent>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-parent</artifactId>
            <version>1.5.10.RELEASE</version>
        </parent>
    
        <properties>
            <!-- spring boot默认的jdk 版本为1.6,我们在这里改为1.8 -->
            <java.version>1.8</java.version>
        </properties>
    
        <dependencies>
            <dependency>
                <!-- 引入spring-boot-starter-web 依赖 -->
                <!-- 由于在spring boot 顶层POM文件中定义了相关dependencyManagement,因此这里就不需要配置 <version></version>, 
                    相关说明可以参考 https://blog.csdn.net/liutengteng130/article/details/46991829 -->
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-starter-web</artifactId>
            </dependency>
    
        </dependencies>
    </project>

    View Code

  3. 创建controller
    spring boot 系列之一:spring boot 入门
    spring boot 系列之一:spring boot 入门

    package com.study.controller;
    
    import org.springframework.web.bind.annotation.RequestMapping;
    import org.springframework.web.bind.annotation.RestController;
    
    /**
     * 这里@RestController = @ Controller + @ ResponseBody,
     * 
     * 会将方法的返回结果直接放入http 返回报文的正文部分,直接显示到页面
     *
     */
    @RestController
    public class HelloController {
    
        @RequestMapping("/hello")
        public String sayHello() {
            return "hello ,spring boot";
        }
    }

    View Code

  4. 创建app启动类
    spring boot 系列之一:spring boot 入门
    spring boot 系列之一:spring boot 入门

    package com.study;
    
    import org.springframework.boot.SpringApplication;
    import org.springframework.boot.autoconfigure.SpringBootApplication;
    
    @SpringBootApplication
    public class App {
    
        public static void main(String[] args) {
            SpringApplication.run(App.class, args);
        }
    }

    View Code

  5. 测试

    1.上述步骤完成之后,还有一个错误需要解决,根据其提示进行修复即可

    spring boot 系列之一:spring boot 入门

    2.最终的目录结构如下:

    spring boot 系列之一:spring boot 入门

 

    3.运行App的main 方法:Run As–>Java Application

    启动log如下:  spring boot 系列之一:spring boot 入门

    4.通过浏览器访问,正常返回controller中的配置内容

    spring boot 系列之一:spring boot 入门

三、总结

从上述例子我们看到spring boot默认替我们做了一些操作

  1. 嵌入的Tomcat,无需部署WAR文件,默认端口号为8080
  2. 简化Maven配置,自动为我们引入依赖
  3. 自动配置Spring,省去了我们配置spring xml文件的麻烦
  4. 默认我们的项目命名空间为”/”
  5. 还有一个比较重要但是例子中未能显示体现出来的是:spring boot 默认自动扫描 配置了@SpringBootApplication注解的类所在的包及其子包,并且这个类不能放在默认包下,否则会报错

    ** WARNING ** : Your ApplicationContext is unlikely to start due to a @ComponentScan of the default package.  并且不能正常启动。

 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/120916.html原文链接:https://javaforall.net

赞 (0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 【织梦插件】xenu软件-网站url和死链提取工具免费下载[通俗易懂]

    【织梦插件】xenu软件-网站url和死链提取工具免费下载[通俗易懂]软件名称 xenu 软件作用 网站网址提取工具 适宜人群 SEO 网址 http://www.jingdouwang.cn/zygx/wzcj/278.html 软件简介:  XenuLinkSleuth可能是你所见功能最强大的网站死链接查询的软件了。使用方法简单,仅需要输入网站URL就可以完成死链查询。用户可直接查看死链和火炼,…

    2022年7月22日
  • 时序攻击

    时序攻击时序攻击

    2022年4月24日
  • itextpdf生成列表基本用法

    itextpdf生成列表基本用法随时随地阅读更多技术实战干货,获取项目源码、学习资料,请关注源代码社区公众号(ydmsq666)、博主微信(guyun297890152)、QQ技术交流群(183198395)。在上一篇文章使用itextpdf生成表格基本用法中,介绍了生成表格的基本步骤和一些常用设置,同样的,在某些需求下,我们需要在pdf中展示列表,体现条理性,itextpdf同样支持,这个开源库支持很多种列表风格来满足…

    2022年6月22日
  • 支持外链的免费相册地址集合

    支持外链的免费相册地址集合国内的:1.http://www.yupoo.com稳定.相册初始空间是61M.以后每月新增加61M空间.空间大小不断累计.不用担心不够用的说~~~关键在于…这个不加它们的网站LOGO-.-单张最大可传2M的图.外链速度稳定.{偶在用…所以清楚-。-}现在已经支持批量上传以及客户端上传等模式啦~[3月的补充说明:因为YUPOO升级,但仍然提供外链地址.请点击"原图",然后图片上…

    2022年6月19日
  • handlerInvocation的invoke方法

    handlerInvocation的invoke方法java.lang.reflect.Proxy类的newProxyInstance(),是用于创建动态代理类和实例的静态方法.返回一个指定接口的代理类实例,该接口可以将方法调用指派到指定的调用处理程序。java.lang.reflect.InvocationHandler接口中的invoke(),在代理实例上处理方法调用并返回结果。当与方法关联的代理实例上调用方法时,将在调用处理程序上调用此方法…

    2022年5月12日
  • matlab之griddata函数

    matlab之griddata函数griddata函数

    2022年5月25日

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号