前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >一分钟搭建springBoot项目,并集成swagger

一分钟搭建springBoot项目,并集成swagger

作者头像
公众号 IT老哥
修改2020-09-21 15:41:26
9200
修改2020-09-21 15:41:26
举报
文章被收录于专栏:用户7621540的专栏

本文源自 公-众-号 IT老哥 的分享

IT老哥,一个在大厂做高级Java开发的程序员,每天分享技术干货文章

简介

1.Spring boot是Spring家族中的一个全新的框架,它用来简化Spring应用程序的创建和开发过程,也可以说Spring boot能简化我们之前采用SpringMVC+Spring+Mybatis框架进行开发的过程。

2.在以往我们采用SpringMVC+Spring+Mybatis框架进行开发的时候,搭建和整合三大框架,我们需要做很好工作,比如配置web.xml,配置Spring,配置Mybatis,并将它们整合在一起等,而Spring boot框架对此开发过程进行了革命性的颠覆,抛弃了繁琐的xml配置过程,采用大量的默认配置简化我们的开发过程.

3.所以采用Spring boot可以非常容易和快速的创建基于Spring框架的应用程序,它让编码变简单了,配置变简单了,部署变简单了,监控也变简单了。

4.正因为Spring boot它化繁为简,让开发变得极其简单和快捷,所以在业界备受关注。Spring boot在国内的关注趋势也日渐超过Spring.

特性

1.能够快速创建基于Spring的应用程序。(简化配置)

2.能够直接使用java的main方法启动内嵌的Tomcat,Jetty服务器运行Spring boot程序,不需要部署war包文件。

3.提供约定的starter POM来简化来简化Maven配置,让Maven配置变得简单。

4.根据项目的maven依赖配置,Spring boot自动配置Spring,SpringMVC等其它开源框架。

5.提供程序的健康检查等功能。(检查内部的运行状态等)

6.基本可以完全不使用xml配置文件,采用注解配置。(或者默认约定的配置,代码中已经实现)

二、快速创建一个spring boot项目

通过这个spring官网:https://start.spring.io/

我们将项目信息填写好之后,点击generate按钮,将项目下载下来,导入idea

在pom文件里加入两个包依赖(swagger):

代码语言:javascript
复制
        
代码语言:javascript
复制
<dependency>
      <groupId>io.springfox</groupId>
      <artifactId>springfox-swagger2</artifactId>
      <version>2.7.0</version>
    </dependency>

    <dependency>
      <groupId>io.springfox</groupId>
      <artifactId>springfox-swagger-ui</artifactId>
      <version>2.7.0</version>
    </dependency>
代码语言:javascript
复制

创建一个user实体类:

代码语言:javascript
复制
/**
 * 用户实体类
 * @author hp
 */
public class User implements Serializable {

    /**
     * 用户名
     */
    private String userName;

    /**
     * 年龄
     */
    private Integer age;

    public String getUserName() {
        return userName;
    }

    public void setUserName(String userName) {
        this.userName = userName;
    }

    public Integer getAge() {
        return age;
    }

    public void setAge(Integer age) {
        this.age = age;
    }
}
代码语言:javascript
复制

创建user的controller接口:

代码语言:javascript
复制
/**
 * 用户controller
 * @author hp
 */
@RestController
@RequestMapping(path = "/user")
@Api(tags = "用户")
public class UserController {

    /**
     * 获取用户信息
     * @param userName
     * @return
     */
    @GetMapping("/getUserInfo")
    @ResponseBody
    @ApiOperation(value = "获取用户信息")
    public User getUserInfo(@ApiParam(value = "用户名", required = true)
            @RequestParam(name = "userName", defaultValue = "张三") String userName) {
        User user = new User();
        user.setUserName(userName);
        user.setAge(20);
        return user;
    }
代码语言:javascript
复制

添加一个swagger配置类:

代码语言:javascript
复制
@Configuration
@EnableSwagger2
public class SwaggerConfig {

    @Bean
    public Docket createRestApi() {
        return new Docket(DocumentationType.SWAGGER_2)
                .apiInfo(apiInfo())
                .select()
                .apis(RequestHandlerSelectors.basePackage("com.bilibili.itlaoge.controller"))
                .paths(PathSelectors.any())
                .build();
    }
    private ApiInfo apiInfo() {
        return new ApiInfoBuilder()
                .title("springboot利用swagger构建api文档")
                .description("简单优雅的restful风格")
                .termsOfServiceUrl("http://localhost:8080")
                .version("1.1")
                .build();
    }
}
代码语言:javascript
复制

下面就开始启动项目,访问http://localhost:8080/swagger-ui.html 就可以看到我们的swagger页面

是不是非常简单又实用呢

云服务器云硬盘数据库(包括MySQL、Redis、MongoDB、SQL Server),CDN流量包,短信流量包,cos资源包,消息队列ckafka,点播资源包,实时音视频套餐,网站管家(WAF),大禹BGP高防(包含高防包及高防IP),云解析SSL证书,手游安全MTP移动应用安全云直播等等。

代码语言:javascript
复制
给个[在看],是对IT老哥最大的支持
本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2020-04-25,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 IT老哥 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 本文源自 公-众-号 IT老哥 的分享
相关产品与服务
云服务器
云服务器(Cloud Virtual Machine,CVM)提供安全可靠的弹性计算服务。 您可以实时扩展或缩减计算资源,适应变化的业务需求,并只需按实际使用的资源计费。使用 CVM 可以极大降低您的软硬件采购成本,简化 IT 运维工作。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档