搭建基于gradle的sprint boot项目,swagger-ui辅助

spring boot官网:http://projects.spring.io/spring-boot/
get start :https://docs.spring.io/spring-boot/docs/current-SNAPSHOT/reference/htmlsingle/#getting-started

需要的环境:
jdk1.6以上  http://www.oracle.com/technetwork/java/javase/downloads/index.html
gradle      https://gradle.org/gradle-download/

开始:

建一个java项目TestSprint
建两个包src/main/java和src/main/resources,一个build.gradle文件

$ cd TestSpring
$ mkdir -p src/main/java
$ mkdir -p src/main/resources
$ touch build.gradle

程序需要一个启动方法也就是main方法,在src/main/java包或者其他在这个包下的其他包建一个java类,建一个main方法

public class SpringBoot {

    public static void main(String[] args) {

    }
}

修改build.gradle文件

buildscript {
repositories {
mavenLocal()
mavenCentral()
}
dependencies {
classpath("org.springframework.boot:spring-boot-gradle-plugin:1.2.7.RELEASE")
classpath("org.springframework:springloaded:1.2.0.RELEASE")
}
} apply plugin: 'java'
apply plugin: 'eclipse'
apply plugin: 'idea'
apply plugin: 'spring-boot' jar {
baseName = 'fzk'
version = '0.0.1'
} repositories {
mavenLocal()
mavenCentral()
} sourceCompatibility = 1.8
targetCompatibility = 1.8 dependencies {
compile("org.springframework.boot:spring-boot-starter-web")
compile("io.springfox:springfox-swagger2:2.2.2")
compile 'io.springfox:springfox-swagger-ui:2.2.2'
}

buildscript块是自身所需要的一些依赖。apply plugin是gradle的插件。jar是打出来到jar包的命名。repositories是依赖所需要的jar下载下来后存放的位置。dependencies是项目所需要的依赖。这里要整合swagger-ui,又加了下面两个依赖。
执行
  gradle build
  gradle eclipse
把需要的jar下载下来,导进项目里。

在src/main/resources里创建配置文件application.properties

server.port:8888

这里现在什么都没有,以后有什么配置文件可以往这里添加。server.port是spring一个提供好设置端口的属性,这样设置完,项目启动时会跑在8888端口。

修改启动类,SprintBoot类

@SpringBootApplication
@EnableSwagger2
@ComponentScan({"cn.com.fzk.controller"})
public class SpringBoot { public static void main(String[] args) {
SpringApplication app = new SpringApplication(SpringBoot.class);
app.run(args); } @Bean
public Docket testApi() {
return new Docket(DocumentationType.SWAGGER_2).groupName("测试")
.apiInfo(new ApiInfoBuilder().title("测试").description("fzk").build()).select()
.paths(PathSelectors.regex("/test.*")).build();
}
}

@SpringBootApplication是@Configuration@EnableAutoConfiguration 和 @ComponentScan三个联合起来的一个注解。@Configuration说明这是一个配置类,@EnableAutoConfiguration允许自动配置,@ComponentScan扫描。
@EnableSwagger2  这个是swagger的一个注解。
@ComponentScan({"cn.com.fzk.controller"})   自动扫描那个包下的所有bean

testApi()这个方法产生了一个Docket类型的bean,这个bean设置了一些需要显示的东西。如果还有其他的分组,创建不同的bean就可以。(swagger-ui 对于生成的api测试还是非常好用的。如果对于配置还有别的需求,swagger-ui github地址:https://github.com/swagger-api/swagger-ui)

上面建好了一个分组,下面写这个分组里面的,建一个controller包(包名随便),建一个Controller

@RestController
@RequestMapping(value = "/test", headers = "Accept=application/json", produces = "application/json")
public class TestController { @RequestMapping(value = "", method = RequestMethod.GET)
public String test() { return "success";
}
}

@RestController是@Controller 和 @ResponseBody的结合,@RequestMapping设置路径,头部信息和生成什么样的格式。

项目建成。
启动方法:点击run-->run configuration-->在main type那栏找到自己的带main方法的那个类就是SprintBoot类。然后就可以跑起来了。
打开浏览器输入http://localhost:8888/swagger-ui.html  就能看到swagger-ui界面了上面是自己写的api。
还有一点不好的就是每次必须都输入http://localhost:8888/swagger-ui.html  才能进入页面。可以通过修改代码在输入http://localhost:8888 就能重定向到swagger页面。
在controller中在建一个类,名字任意。这里是HomeController

@Controller
public class HomeController {
@RequestMapping(value = "/", method = RequestMethod.GET)
public String home() {
return "redirect:swagger-ui.html";
}
}

这样,每次只需要输入网址和端口号就可以了。

基于gralde搭建spring boot项目的更多相关文章

  1. 基于 intellij IDEA 快速搭建Spring Boot项目

           在<一步步搭建 Spring Boot maven 框架的工程>一文中,已经介绍了如何使用Eclipse快速搭建Spring Boot项目.由于最近将开发工具由Eclipse ...

  2. Spring Boot入门(一):搭建Spring Boot项目

    从本篇博客开始,我们开始进入Spring Boot的世界,它的出现使Spring的开发变得更加简洁,因此一经推出受到众多程序员的喜爱. 作为Spring Boot系列的第一篇博客,我们先来讲解下如何搭 ...

  3. Spring Boot系列学习文章(一) -- Intellij IDEA 搭建Spring Boot项目

    前言: 最近做的一个项目是用Spring Boot来做的,所以把工作中遇到的一些知识点.问题点整理一下,做成一系列学习文章,供后续学习Spring Boot的同仁们参考,我也是第一次接触Spring ...

  4. Myeclipse下使用Maven搭建spring boot项目

    开发环境:Myeclipse2017.JDK1.6.Tomcat 8.0.Myeclipse下使用Maven搭建spring boot项目,详细过程如下: 1. New -> Project.. ...

  5. 使用IDEA,Eclispe搭建Spring Boot项目

    如何创建一个Spring Boot项目?这里使用maven来进行依赖管理,根据常用的IDE,可以使用IDEA.Eclipse.或者访问官方网站搭建. 项目搭建环境准备 JDK:1.8 MAVEN:3. ...

  6. Spring boot入门(一):快速搭建Spring boot项目

    (一)Spring boot介绍 本部分摘自:https://www.zhihu.com/question/64671972/answer/223383505 Spring Boot是由Pivotal ...

  7. 构建微服务:快速搭建Spring Boot项目

    Spring Boot简介: Spring Boot是由Pivotal团队提供的全新框架,其设计目的是用来简化新Spring应用的初始搭建以及开发过程.该框架使用了特定的方式来进行配置,从而使开发人员 ...

  8. Myeclipse下使用Maven搭建spring boot项目(第二篇)

    现在需要搭建spring boot框架,并实现一个HelloWorld的项目,让程序真正运行起来. 一.在pom.xml中引入spring-boot-start-parent,spring官方的叫st ...

  9. 快速搭建Spring Boot项目

    Spring boot是Spring推出的一个轻量化web框架,主要解决了Spring对于小型项目饱受诟病的配置和开发速度问题. Spring Boot 包含的特性如下: 创建可以独立运行的 Spri ...

随机推荐

  1. 如何使用不同参数组合生成独立的TestCase函数(Python)

    在使用selenium2 Python做自动化测试的时候遇到个问题,写一个testcase 生成报告后,会有一个case的执行状态记录.这样我们写一个登录功能的自动化用例,只写一个case显然是不行的 ...

  2. Oracle-记录学习

    --select name,count(id) from work_test group by name having count(id)>1--select upper(name),t.*,l ...

  3. PHP中的XML解析的5种方法

    [前言]不管是桌面软件开发,还是WEB应用,XML无处不在!然而在平时的工作中,仅仅是使用一些已经封装好的类对XML对于处理,包括生成,解析等.假期有空,于是将PHP中的几种XML解析方法总结如下: ...

  4. android 引入phonegap

    步骤: 1.复制cordova-2.9.0.jar 到lib文件下 2.在assets文件下创建www文件夹及其cordova.js .jquery.js.jquery.mobile-1.3.2.cs ...

  5. unicode下char*和CString和一些数据之间的转换

    首先mfc下字符串只有两种数据:char(一个字节)和wchar_t(两个字节),很多其他数据类型如TCHAR,WCHAR等都是这个两个基本类型的宏定义,BYTE是uchar 1.对话框打印char* ...

  6. 在vs中怎样一次性的添加一个文件夹到解决方案里

    这个方法通常用到编译源码库方面,在这里我以编译静态库为例: 1.首先建立自己的工程Mytest 第二步 选择静态库 点击finish 完成工程的建立 第三步 点击PROJECT菜单项 选中Show A ...

  7. 电量检测芯片BQ27510使用心得

    最近接触到一款TI的电量检测芯片BQ27510,网上很少有人提及该芯片如何使用,大部分博文都是搬得BQ27510的datasheet,至于真正使用过的很少,该芯片我个人感觉还是非常强大的,能自动学习你 ...

  8. .Net使用微軟自帶的用戶驗證和登錄授權

    使用微軟的用戶驗證,權限管理的方法 一.使用配置好的數據庫, 1.首先建立想定的數據庫(只填寫名字不加載任何表,如:Login數據庫) 2.使用vs兼容工具命令提示.如圖: 3.導入數據庫所需要的ta ...

  9. js表单操作

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  10. 【Unity3D游戏开发】GameObject.Find()、Transform.Find查找隐藏对象 (十)

    GameObjectFindTransformFind查找游戏对象 前置条件 相关API 1 GameObjectFind 2 TransformFind 3 其他查找 实际测试 即使隐藏root节点 ...