Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
G
guns-vip
Overview
Overview
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
chenjunxiong
guns-vip
Commits
aaea7e90
Commit
aaea7e90
authored
Jun 01, 2017
by
fsn
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
集成swagger
parent
03c1a4c0
Show whitespace changes
Inline
Side-by-side
Showing
7 changed files
with
94 additions
and
5 deletions
+94
-5
pom.xml
+10
-0
src/main/java/com/stylefeng/guns/GunsApplication.java
+16
-1
src/main/java/com/stylefeng/guns/config/SwaggerConfig.java
+45
-0
src/main/java/com/stylefeng/guns/config/properties/GunsProperties.java
+11
-1
src/main/java/com/stylefeng/guns/config/web/BeetlConfig.java
+0
-1
src/main/java/com/stylefeng/guns/modular/system/controller/CodeController.java
+11
-2
src/main/resources/application.yml
+1
-0
No files found.
pom.xml
View file @
aaea7e90
...
...
@@ -134,6 +134,16 @@
<artifactId>
beetl
</artifactId>
<version>
2.7.15
</version>
</dependency>
<dependency>
<groupId>
io.springfox
</groupId>
<artifactId>
springfox-swagger2
</artifactId>
<version>
2.2.2
</version>
</dependency>
<dependency>
<groupId>
io.springfox
</groupId>
<artifactId>
springfox-swagger-ui
</artifactId>
<version>
2.2.2
</version>
</dependency>
</dependencies>
...
...
src/main/java/com/stylefeng/guns/GunsApplication.java
View file @
aaea7e90
package
com
.
stylefeng
.
guns
;
import
com.stylefeng.guns.config.properties.GunsProperties
;
import
org.slf4j.Logger
;
import
org.slf4j.LoggerFactory
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.boot.SpringApplication
;
import
org.springframework.boot.autoconfigure.SpringBootApplication
;
import
org.springframework.web.servlet.config.annotation.ResourceHandlerRegistry
;
import
org.springframework.web.servlet.config.annotation.WebMvcConfigurerAdapter
;
/**
* SpringBoot方式启动类
...
...
@@ -12,10 +16,21 @@ import org.springframework.boot.autoconfigure.SpringBootApplication;
* @Date 2017/5/21 12:06
*/
@SpringBootApplication
public
class
GunsApplication
{
public
class
GunsApplication
extends
WebMvcConfigurerAdapter
{
protected
final
static
Logger
logger
=
LoggerFactory
.
getLogger
(
GunsApplication
.
class
);
@Autowired
GunsProperties
gunsProperties
;
@Override
public
void
addResourceHandlers
(
ResourceHandlerRegistry
registry
)
{
if
(
gunsProperties
.
getSwaggerOpen
()){
registry
.
addResourceHandler
(
"swagger-ui.html"
).
addResourceLocations
(
"classpath:/META-INF/resources/"
);
registry
.
addResourceHandler
(
"/webjars/**"
).
addResourceLocations
(
"classpath:/META-INF/resources/webjars/"
);
}
}
public
static
void
main
(
String
[]
args
)
{
SpringApplication
.
run
(
GunsApplication
.
class
,
args
);
logger
.
info
(
"GunsApplication is sussess!"
);
...
...
src/main/java/com/stylefeng/guns/config/SwaggerConfig.java
0 → 100644
View file @
aaea7e90
package
com
.
stylefeng
.
guns
.
config
;
import
org.springframework.boot.autoconfigure.condition.ConditionalOnProperty
;
import
org.springframework.context.annotation.Bean
;
import
org.springframework.context.annotation.Configuration
;
import
springfox.documentation.builders.ApiInfoBuilder
;
import
springfox.documentation.builders.PathSelectors
;
import
springfox.documentation.builders.RequestHandlerSelectors
;
import
springfox.documentation.service.ApiInfo
;
import
springfox.documentation.spi.DocumentationType
;
import
springfox.documentation.spring.web.plugins.Docket
;
import
springfox.documentation.swagger2.annotations.EnableSwagger2
;
/**
* swagger配置类
*
* @author fengshuonan
* @date 2017年6月1日19:42:59
*/
@Configuration
@EnableSwagger2
@ConditionalOnProperty
(
prefix
=
"guns"
,
name
=
"swagger-open"
,
havingValue
=
"true"
)
public
class
SwaggerConfig
{
@Bean
public
Docket
createRestApi
()
{
return
new
Docket
(
DocumentationType
.
SWAGGER_2
)
.
apiInfo
(
apiInfo
())
.
select
()
.
apis
(
RequestHandlerSelectors
.
basePackage
(
"com.stylefeng.guns.modular.system.controller"
))
.
paths
(
PathSelectors
.
any
())
.
build
();
}
private
ApiInfo
apiInfo
()
{
return
new
ApiInfoBuilder
()
.
title
(
"Guns RESTful APIs"
)
.
description
(
"Guns Api文档"
)
.
termsOfServiceUrl
(
"http://git.oschina.net/naan1993/guns"
)
.
contact
(
"stylefeng"
)
.
version
(
"2.0"
)
.
build
();
}
}
src/main/java/com/stylefeng/guns/config/properties/GunsProperties.java
View file @
aaea7e90
...
...
@@ -20,7 +20,9 @@ public class GunsProperties {
public
static
final
String
PREFIX
=
"guns"
;
private
Boolean
kaptchaOpen
;
private
Boolean
kaptchaOpen
=
false
;
private
Boolean
swaggerOpen
=
false
;
private
String
fileUploadPath
;
...
...
@@ -56,4 +58,12 @@ public class GunsProperties {
public
void
setKaptchaOpen
(
Boolean
kaptchaOpen
)
{
this
.
kaptchaOpen
=
kaptchaOpen
;
}
public
Boolean
getSwaggerOpen
()
{
return
swaggerOpen
;
}
public
void
setSwaggerOpen
(
Boolean
swaggerOpen
)
{
this
.
swaggerOpen
=
swaggerOpen
;
}
}
src/main/java/com/stylefeng/guns/config/web/BeetlConfig.java
View file @
aaea7e90
...
...
@@ -16,7 +16,6 @@ import org.springframework.context.annotation.Configuration;
* @date 2016年11月12日 下午5:03:32
*/
@Configuration
@ConfigurationProperties
(
prefix
=
"spring.mvc.view"
)
public
class
BeetlConfig
{
@Autowired
...
...
src/main/java/com/stylefeng/guns/modular/system/controller/CodeController.java
View file @
aaea7e90
...
...
@@ -7,6 +7,9 @@ import com.stylefeng.guns.core.template.config.ContextConfig;
import
com.stylefeng.guns.core.template.engine.SimpleTemplateEngine
;
import
com.stylefeng.guns.core.template.engine.base.GunsTemplateEngine
;
import
com.stylefeng.guns.core.util.ToolUtil
;
import
io.swagger.annotations.ApiImplicitParam
;
import
io.swagger.annotations.ApiImplicitParams
;
import
io.swagger.annotations.ApiOperation
;
import
org.springframework.stereotype.Controller
;
import
org.springframework.web.bind.annotation.RequestMapping
;
import
org.springframework.web.bind.annotation.ResponseBody
;
...
...
@@ -34,16 +37,22 @@ public class CodeController extends BaseController {
/**
* 代码生成
*/
@ApiOperation
(
"生成代码"
)
@ApiImplicitParams
({
@ApiImplicitParam
(
name
=
"bizChName"
,
value
=
"业务名称"
,
required
=
true
,
dataType
=
"String"
),
@ApiImplicitParam
(
name
=
"bizEnName"
,
value
=
"业务英文名称"
,
required
=
true
,
dataType
=
"String"
),
@ApiImplicitParam
(
name
=
"path"
,
value
=
"项目生成类路径"
,
required
=
true
,
dataType
=
"String"
)
})
@RequestMapping
(
value
=
"/generate"
)
@ResponseBody
public
Object
add
(
String
bizChName
,
String
bizEnName
,
String
path
)
{
if
(
ToolUtil
.
isOneEmpty
(
bizChName
,
bizEnName
))
{
if
(
ToolUtil
.
isOneEmpty
(
bizChName
,
bizEnName
))
{
throw
new
BussinessException
(
BizExceptionEnum
.
REQUEST_NULL
);
}
ContextConfig
contextConfig
=
new
ContextConfig
();
contextConfig
.
setBizChName
(
bizChName
);
contextConfig
.
setBizEnName
(
bizEnName
);
if
(
ToolUtil
.
isNotEmpty
(
path
))
{
if
(
ToolUtil
.
isNotEmpty
(
path
))
{
contextConfig
.
setProjectPath
(
path
);
}
...
...
src/main/resources/application.yml
View file @
aaea7e90
...
...
@@ -4,6 +4,7 @@
################### guns配置 ###################
guns
:
swagger-open
:
true
#是否开启swagger (true/false)
kaptcha-open
:
false
#是否开启登录时验证码 (true/false)
#file-upload-path: d:/tmp #文件上传目录(不配置的话为java.io.tmpdir目录)
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment