Skip to content
Toggle navigation
Projects
Groups
Snippets
Help
zhoujh@polysoft.com.cn
/
nafmii-parent
This project
Loading...
Sign in
Toggle navigation
Go to a project
Project
Repository
Issues
0
Merge Requests
0
Pipelines
Wiki
Settings
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Commit ab187a28
authored
Apr 22, 2021
by
zhoujinghao
Browse Files
Options
Browse Files
Tag
Download
Email Patches
Plain Diff
swagger 提交
1 parent
0ba828f5
Hide whitespace changes
Inline
Side-by-side
Showing
19 changed files
with
286 additions
and
68 deletions
nafmii-admin/pom.xml
nafmii-admin/src/main/java/org/nafmii/nafmiiadmin/NafmiiAdminApplication.java
nafmii-admin/src/main/java/org/nafmii/nafmiiadmin/controller/TestController.java
nafmii-admin/src/main/resources/application.properties
nafmii-app/pom.xml
nafmii-app/src/main/java/org/nafmii/NafmiiAppApplication.java
nafmii-app/src/main/java/org/nafmii/adminService/AdminService.java
nafmii-app/src/main/java/org/nafmii/controller/AppController.java
nafmii-app/src/main/resources/application.properties
nafmii-common/pom.xml
nafmii-common/src/main/java/org/nafmii/nafmiicommon/NafmiiCommonApplication.java
nafmii-common/src/main/java/org/nafmii/nafmiicommon/test.java
nafmii-common/src/main/java/org/nafmii/swagger/SwaggerConfig.java
nafmii-common/src/main/resources/application.properties
nafmii-common/src/test/java/org/nafmii/nafmiicommon/NafmiiCommonApplicationTests.java → nafmii-common/src/test/java/org/nafmii/NafmiiCommonApplicationTests.java
nafmii-mbg/src/main/java/com/macro/mall/CommentGenerator.java
nafmii-mbg/src/main/resources/generator.properties
nafmii-mbg/src/main/resources/generatorConfig.xml
pom.xml
nafmii-admin/pom.xml
View file @
ab187a2
...
...
@@ -109,6 +109,23 @@
<groupId>
de.codecentric
</groupId>
<artifactId>
spring-boot-admin-starter-server
</artifactId>
</dependency>
<dependency>
<groupId>
io.springfox
</groupId>
<artifactId>
springfox-swagger-ui
</artifactId>
</dependency>
<dependency>
<groupId>
io.springfox
</groupId>
<artifactId>
springfox-swagger2
</artifactId>
</dependency>
<dependency>
<groupId>
com.google.guava
</groupId>
<artifactId>
guava
</artifactId>
</dependency>
<dependency>
<groupId>
org.nafmii
</groupId>
<artifactId>
nafmii-common
</artifactId>
</dependency>
</dependencies>
<build>
...
...
nafmii-admin/src/main/java/org/nafmii/nafmiiadmin/NafmiiAdminApplication.java
View file @
ab187a2
...
...
@@ -5,9 +5,13 @@ import org.springframework.boot.autoconfigure.SpringBootApplication;
import
org.springframework.boot.autoconfigure.jdbc.DataSourceAutoConfiguration
;
import
org.springframework.boot.autoconfigure.orm.jpa.HibernateJpaAutoConfiguration
;
import
org.springframework.cloud.netflix.eureka.EnableEurekaClient
;
import
org.springframework.cloud.openfeign.EnableFeignClients
;
import
springfox.documentation.swagger2.annotations.EnableSwagger2
;
@SpringBootApplication
(
exclude
=
{
DataSourceAutoConfiguration
.
class
})
@EnableEurekaClient
@EnableSwagger2
@EnableFeignClients
public
class
NafmiiAdminApplication
{
public
static
void
main
(
String
[]
args
)
{
...
...
nafmii-admin/src/main/java/org/nafmii/nafmiiadmin/controller/TestController.java
View file @
ab187a2
package
org
.
nafmii
.
nafmiiadmin
.
controller
;
import
io.swagger.annotations.Api
;
import
io.swagger.annotations.ApiOperation
;
import
org.nafmii.nafmiiadmin.service.TestService
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.web.bind.annotation.GetMapping
;
...
...
@@ -17,10 +19,13 @@ import org.springframework.web.bind.annotation.RestController;
*/
@RestController
@RequestMapping
(
"web/nafmii/test/"
)
@Api
(
tags
=
"1.0.0"
,
description
=
"测试"
)
public
class
TestController
{
@Autowired
private
TestService
service
;
@ApiOperation
(
value
=
"测试"
,
notes
=
"测试"
)
@GetMapping
(
"search"
)
public
String
search
(){
String
test
=
service
.
search
();
...
...
nafmii-admin/src/main/resources/application.properties
View file @
ab187a2
server.port
=
8001
spring.application.name
=
nafmii-admin
logging.level.root
=
debug
logging.level.root
=
info
logging.file.path
=
d:/data/logs/nafmii-admin/
logging.file.max-
history
=
15
logging.file.max-
size
=
300MB
logging.pattern.dateformat
=
yyyy-MM-dd hh:MM:ss
eureka.client.serviceUrl.defaultZone
=
http://127.0.0.1:8761/eureka
admin.swagger
=
org.nafmii.nafmiiadmin
admin.title
=
NAFMIIweb管理平台应用层接口说明
admin.description
=
NAFMIIweb管理平台应用层接口说明
eureka.instance.statusPageUrl
=
http://127.0.0.1:8001/swagger-ui.html
eureka.instance.prefer-ip-
address
=
true
eureka.instance.instance-
id
=
${spring.cloud.client.ip-address}:${server.port}
\ No newline at end of file
nafmii-app/pom.xml
View file @
ab187a2
...
...
@@ -58,8 +58,24 @@
<groupId>
com.github.pagehelper
</groupId>
<artifactId>
pagehelper
</artifactId>
</dependency>
<dependency>
<groupId>
io.springfox
</groupId>
<artifactId>
springfox-swagger-ui
</artifactId>
</dependency>
<dependency>
<groupId>
io.springfox
</groupId>
<artifactId>
springfox-swagger2
</artifactId>
</dependency>
<dependency>
<groupId>
com.google.guava
</groupId>
<artifactId>
guava
</artifactId>
</dependency>
<dependency>
<groupId>
org.nafmii
</groupId>
<artifactId>
nafmii-common
</artifactId>
</dependency>
<dependency>
<groupId>
org.springframework.boot
</groupId>
<artifactId>
spring-boot-starter-web
</artifactId>
<exclusions>
<!-- 去掉springboot默认配置 -->
...
...
nafmii-app/src/main/java/org/nafmii/NafmiiAppApplication.java
View file @
ab187a2
...
...
@@ -5,10 +5,12 @@ import org.springframework.boot.autoconfigure.SpringBootApplication;
import
org.springframework.boot.autoconfigure.jdbc.DataSourceAutoConfiguration
;
import
org.springframework.cloud.netflix.eureka.EnableEurekaClient
;
import
org.springframework.cloud.openfeign.EnableFeignClients
;
import
springfox.documentation.swagger2.annotations.EnableSwagger2
;
@SpringBootApplication
(
exclude
=
{
DataSourceAutoConfiguration
.
class
})
@EnableEurekaClient
@EnableFeignClients
@EnableSwagger2
public
class
NafmiiAppApplication
{
public
static
void
main
(
String
[]
args
)
{
...
...
nafmii-app/src/main/java/org/nafmii/adminService/AdminService.java
View file @
ab187a2
package
org
.
nafmii
.
adminService
;
import
org.springframework.cloud.openfeign.FeignClient
;
import
org.springframework.stereotype.Component
;
import
org.springframework.web.bind.annotation.GetMapping
;
import
org.springframework.web.bind.annotation.PostMapping
;
import
org.springframework.web.bind.annotation.RequestBody
;
...
...
@@ -16,6 +17,7 @@ import java.util.List;
* @remark:
*/
@FeignClient
(
value
=
"nafmii-admin"
)
@Component
public
interface
AdminService
{
//测试feign
@GetMapping
(
"web/nafmii/test/search"
)
...
...
nafmii-app/src/main/java/org/nafmii/controller/AppController.java
View file @
ab187a2
package
org
.
nafmii
.
controller
;
import
io.swagger.annotations.Api
;
import
io.swagger.annotations.ApiOperation
;
import
org.nafmii.adminService.AdminService
;
import
org.nafmii.service.AppService
;
import
org.springframework.beans.factory.annotation.Autowired
;
...
...
@@ -17,9 +19,12 @@ import org.springframework.web.bind.annotation.RestController;
*/
@RestController
@RequestMapping
(
"app/nafmii/test/"
)
@Api
(
tags
=
"2.0.0"
,
description
=
"测试"
)
public
class
AppController
{
@Autowired
private
AppService
appService
;
@ApiOperation
(
value
=
"测试"
,
notes
=
"测试"
)
@GetMapping
(
"search"
)
public
String
search
(){
String
test
=
appService
.
search
();
...
...
nafmii-app/src/main/resources/application.properties
View file @
ab187a2
server.port
=
8002
eureka.client.serviceUrl.defaultZone
=
http://127.0.0.1:8761/eureka
spring.application.name
=
nafmii-app
admin.title
=
NAFMIIweb管理平台应用层接口说明
admin.description
=
NAFMIIweb管理平台应用层接口说明
eureka.instance.statusPageUrl
=
http://127.0.0.1:8002/swagger-ui.html
eureka.instance.prefer-ip-
address
=
true
eureka.instance.instance-
id
=
${spring.cloud.client.ip-address}:${server.port}
logging.level.root
=
debug
admin.swagger
=
org.nafmii.controller
nafmii-common/pom.xml
View file @
ab187a2
...
...
@@ -16,52 +16,31 @@
<java.version>
1.8
</java.version>
</properties>
<dependencies>
<dependency>
<groupId>
org.springframework.boot
</groupId>
<artifactId>
spring-boot-starter-web
</artifactId>
</dependency>
<dependency>
<groupId>
org.springframework.boot
</groupId>
<artifactId>
spring-boot-starter-test
</artifactId>
<scope>
test
</scope>
</dependency>
<dependency>
<groupId>
com.github.pagehelper
</groupId>
<artifactId>
pagehelper
</artifactId>
</dependency>
<dependency>
<groupId>
org.springframework.boot
</groupId>
<artifactId>
spring-boot-starter-web
</artifactId>
</dependency>
<dependency>
<groupId>
org.springframework.boot
</groupId>
<artifactId>
spring-boot-starter-data-redis
</artifactId>
</dependency>
<dependency>
<groupId>
org.springframework.data
</groupId>
<artifactId>
spring-data-commons
</artifactId>
</dependency>
<dependency>
<groupId>
com.github.xiaoymin
</groupId>
<artifactId>
knife4j-micro-spring-boot-starter
</artifactId>
</dependency>
<dependency>
<groupId>
net.logstash.logback
</groupId>
<artifactId>
logstash-logback-encoder
</artifactId>
</dependency>
<dependency>
<groupId>
org.springframework.boot
</groupId>
<artifactId>
spring-boot-starter-validation
</artifactId>
<groupId>
io.springfox
</groupId>
<artifactId>
springfox-swagger-ui
</artifactId>
</dependency>
<dependency>
<groupId>
io.springfox
</groupId>
<artifactId>
springfox-swagger2
</artifactId>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>
org.springframework.boot
</groupId>
<artifactId>
spring-boot-maven-plugin
</artifactId>
<groupId>
org.apache.maven.plugins
</groupId>
<artifactId>
maven-surefire-plugin
</artifactId>
<version>
2.18.1
</version>
<configuration>
<skipTests>
true
</skipTests>
</configuration>
</plugin>
</plugins>
</build>
...
...
nafmii-common/src/main/java/org/nafmii/nafmiicommon/NafmiiCommonApplication.java
deleted
100644 → 0
View file @
0ba828f
package
org
.
nafmii
.
nafmiicommon
;
import
org.springframework.boot.SpringApplication
;
import
org.springframework.boot.autoconfigure.SpringBootApplication
;
@SpringBootApplication
public
class
NafmiiCommonApplication
{
public
static
void
main
(
String
[]
args
)
{
SpringApplication
.
run
(
NafmiiCommonApplication
.
class
,
args
);
}
}
nafmii-common/src/main/java/org/nafmii/nafmiicommon/test.java
deleted
100644 → 0
View file @
0ba828f
package
org
.
nafmii
.
nafmiicommon
;
/**
* @author:zhoujh
* @Function:TODO
* @date 2021/4/21 10:43
* @ClassName:
* @version:
* @remark:
*/
public
class
test
{
}
nafmii-common/src/main/java/org/nafmii/swagger/SwaggerConfig.java
0 → 100644
View file @
ab187a2
package
org
.
nafmii
.
swagger
;
import
org.springframework.beans.factory.annotation.Value
;
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-ui.html上展示所有Api接口
* User: FrankBai
* Date: 2020/02/14
**/
@Configuration
@EnableSwagger2
public
class
SwaggerConfig
{
@Value
(
"${admin.swagger}"
)
private
static
String
ADMIN_SWAGGER
;
@Value
(
"${admin.title}"
)
private
static
String
ADMIN_TITLE
;
@Value
(
"${admin.description}"
)
private
static
String
ADMIN_DESCRIPTION
;
@Bean
public
Docket
adminApi
()
{
// String basePackage = ADMIN_SWAGGER;// 要暴露的API接口的基础包名
return
new
Docket
(
DocumentationType
.
SWAGGER_2
)
.
select
()
.
apis
(
RequestHandlerSelectors
.
basePackage
(
ADMIN_SWAGGER
))
.
paths
(
PathSelectors
.
any
())
.
build
()
.
apiInfo
(
apiInfo
())
.
useDefaultResponseMessages
(
false
);
}
private
static
ApiInfo
apiInfo
()
{
return
new
ApiInfoBuilder
()
.
title
(
ADMIN_TITLE
)
.
description
(
ADMIN_DESCRIPTION
)
.
version
(
"1.0"
)
.
build
();
}
}
nafmii-common/src/main/resources/application.properties
View file @
ab187a2
nafmii-common/src/test/java/org/nafmii/
nafmiicommon/
NafmiiCommonApplicationTests.java
→
nafmii-common/src/test/java/org/nafmii/NafmiiCommonApplicationTests.java
View file @
ab187a2
package
org
.
nafmii
.
nafmiicommon
;
package
org
.
nafmii
;
import
org.junit.jupiter.api.Test
;
import
org.springframework.boot.test.context.SpringBootTest
;
...
...
nafmii-mbg/src/main/java/com/macro/mall/CommentGenerator.java
0 → 100644
View file @
ab187a2
package
com
.
macro
.
mall
;
import
org.mybatis.generator.api.IntrospectedColumn
;
import
org.mybatis.generator.api.IntrospectedTable
;
import
org.mybatis.generator.api.dom.java.CompilationUnit
;
import
org.mybatis.generator.api.dom.java.Field
;
import
org.mybatis.generator.api.dom.java.FullyQualifiedJavaType
;
import
org.mybatis.generator.internal.DefaultCommentGenerator
;
import
org.mybatis.generator.internal.util.StringUtility
;
import
java.util.Properties
;
/**
* 自定义注释生成器
* Created by macro on 2018/4/26.
*/
public
class
CommentGenerator
extends
DefaultCommentGenerator
{
private
boolean
addRemarkComments
=
false
;
private
static
final
String
EXAMPLE_SUFFIX
=
"Example"
;
private
static
final
String
MAPPER_SUFFIX
=
"Mapper"
;
private
static
final
String
API_MODEL_PROPERTY_FULL_CLASS_NAME
=
"io.swagger.annotations.ApiModelProperty"
;
/**
* 设置用户配置的参数
*/
@Override
public
void
addConfigurationProperties
(
Properties
properties
)
{
super
.
addConfigurationProperties
(
properties
);
this
.
addRemarkComments
=
StringUtility
.
isTrue
(
properties
.
getProperty
(
"addRemarkComments"
));
}
/**
* 给字段添加注释
*/
@Override
public
void
addFieldComment
(
Field
field
,
IntrospectedTable
introspectedTable
,
IntrospectedColumn
introspectedColumn
)
{
String
remarks
=
introspectedColumn
.
getRemarks
();
//根据参数和备注信息判断是否添加备注信息
if
(
addRemarkComments
&&
StringUtility
.
stringHasValue
(
remarks
)){
// addFieldJavaDoc(field, remarks);
//数据库中特殊字符需要转义
if
(
remarks
.
contains
(
"\""
)){
remarks
=
remarks
.
replace
(
"\""
,
"'"
);
}
//给model的字段添加swagger注解
field
.
addJavaDocLine
(
"@ApiModelProperty(value = \""
+
remarks
+
"\")"
);
}
}
/**
* 给model的字段添加注释
*/
private
void
addFieldJavaDoc
(
Field
field
,
String
remarks
)
{
//文档注释开始
field
.
addJavaDocLine
(
"/**"
);
//获取数据库字段的备注信息
String
[]
remarkLines
=
remarks
.
split
(
System
.
getProperty
(
"line.separator"
));
for
(
String
remarkLine:
remarkLines
){
field
.
addJavaDocLine
(
" * "
+
remarkLine
);
}
addJavadocTag
(
field
,
false
);
field
.
addJavaDocLine
(
" */"
);
}
@Override
public
void
addJavaFileComment
(
CompilationUnit
compilationUnit
)
{
super
.
addJavaFileComment
(
compilationUnit
);
//只在model中添加swagger注解类的导入
if
(!
compilationUnit
.
getType
().
getFullyQualifiedName
().
contains
(
MAPPER_SUFFIX
)&&!
compilationUnit
.
getType
().
getFullyQualifiedName
().
contains
(
EXAMPLE_SUFFIX
)){
compilationUnit
.
addImportedType
(
new
FullyQualifiedJavaType
(
API_MODEL_PROPERTY_FULL_CLASS_NAME
));
}
}
}
nafmii-mbg/src/main/resources/generator.properties
0 → 100644
View file @
ab187a2
jdbc.driverClass
=
com.mysql.cj.jdbc.Driver
jdbc.connectionURL
=
jdbc:mysql://140.143.249.40:3308/edz?useUnicode=true&characterEncoding=UTF-8&serverTimezone=UTC
jdbc.userId
=
root
jdbc.password
=
123456
\ No newline at end of file
nafmii-mbg/src/main/resources/generatorConfig.xml
0 → 100644
View file @
ab187a2
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE generatorConfiguration
PUBLIC "-//mybatis.org//DTD MyBatis Generator Configuration 1.0//EN"
"http://mybatis.org/dtd/mybatis-generator-config_1_0.dtd">
<generatorConfiguration>
<properties
resource=
"generator.properties"
/>
<context
id=
"MySqlContext"
targetRuntime=
"MyBatis3"
defaultModelType=
"flat"
>
<property
name=
"beginningDelimiter"
value=
"`"
/>
<property
name=
"endingDelimiter"
value=
"`"
/>
<property
name=
"javaFileEncoding"
value=
"UTF-8"
/>
<!-- 为模型生成序列化方法-->
<plugin
type=
"org.mybatis.generator.plugins.SerializablePlugin"
/>
<!-- 为生成的Java模型创建一个toString方法 -->
<plugin
type=
"org.mybatis.generator.plugins.ToStringPlugin"
/>
<!--生成mapper.xml时覆盖原文件-->
<plugin
type=
"org.mybatis.generator.plugins.UnmergeableXmlMappersPlugin"
/>
<commentGenerator
type=
"com.macro.mall.CommentGenerator"
>
<!-- 是否去除自动生成的注释 true:是 : false:否 -->
<property
name=
"suppressAllComments"
value=
"true"
/>
<property
name=
"suppressDate"
value=
"true"
/>
<property
name=
"addRemarkComments"
value=
"true"
/>
</commentGenerator>
<jdbcConnection
driverClass=
"${jdbc.driverClass}"
connectionURL=
"${jdbc.connectionURL}"
userId=
"${jdbc.userId}"
password=
"${jdbc.password}"
>
<!--解决mysql驱动升级到8.0后不生成指定数据库代码的问题-->
<property
name=
"nullCatalogMeansCurrent"
value=
"true"
/>
</jdbcConnection>
<javaModelGenerator
targetPackage=
"org.nafmii.nafmiimbg.model"
targetProject=
"nafmii-mbg\src\main\java"
/>
<sqlMapGenerator
targetPackage=
"org.nafmii.nafmiimbg.mapper"
targetProject=
"nafmii-mbg\src\main\resources"
/>
<javaClientGenerator
type=
"XMLMAPPER"
targetPackage=
"com.macro.mall.mapper"
targetProject=
"mall-mbg\src\main\java"
/>
<!--生成全部表tableName设为%-->
<table
tableName=
"%"
>
<!--<generatedKey column="id" sqlStatement="MySql" identity="true"/>-->
</table>
</context>
</generatorConfiguration>
\ No newline at end of file
pom.xml
View file @
ab187a2
...
...
@@ -23,6 +23,7 @@
<module>
nafmii-common
</module>
<module>
nafmii-quartz
</module>
<module>
nafmii-app
</module>
<module>
nafmii-mbg
</module>
</modules>
<properties>
...
...
@@ -39,6 +40,7 @@
<pagehelper.version>
5.2.0
</pagehelper.version>
<druid.version>
1.1.23
</druid.version>
<hutool.version>
5.4.0
</hutool.version>
<guava.version>
20.0
</guava.version>
<mybatis-generator.version>
1.4.0
</mybatis-generator.version>
<mybatis.version>
3.5.5
</mybatis.version>
<mysql-connector.version>
8.0.20
</mysql-connector.version>
...
...
@@ -64,6 +66,10 @@
<artifactId>
spring-boot-starter-actuator
</artifactId>
</dependency>
<dependency>
<groupId>
org.springframework.boot
</groupId>
<artifactId>
spring-boot-starter-aop
</artifactId>
</dependency>
<dependency>
<groupId>
cn.hutool
</groupId>
<artifactId>
hutool-all
</artifactId>
</dependency>
...
...
@@ -84,6 +90,29 @@
</dependencies>
<dependencyManagement>
<dependencies>
<!--swagger 相关依赖-->
<dependency>
<groupId>
io.springfox
</groupId>
<artifactId>
springfox-swagger-ui
</artifactId>
<version>
2.6.1
</version>
</dependency>
<dependency>
<groupId>
io.springfox
</groupId>
<artifactId>
springfox-swagger2
</artifactId>
<version>
2.6.1
</version>
</dependency>
<dependency>
<groupId>
com.google.guava
</groupId>
<artifactId>
guava
</artifactId>
<version>
${guava.version}
</version>
</dependency>
<dependency>
<groupId>
org.nafmii
</groupId>
<artifactId>
nafmii-common
</artifactId>
<version>
0.0.1-SNAPSHOT
</version>
</dependency>
<!--Spring Cloud 相关依赖-->
<dependency>
<groupId>
org.springframework.cloud
</groupId>
...
...
@@ -188,10 +217,10 @@
<build>
<plugins>
<
plugin
>
<
groupId>
org.springframework.boot
</groupId
>
<
artifactId>
spring-boot-maven-plugin
</artifactId
>
<
/plugin
>
<
!--<plugin>--
>
<
!--<groupId>org.springframework.boot</groupId>--
>
<
!--<artifactId>spring-boot-maven-plugin</artifactId>--
>
<
!--</plugin>--
>
</plugins>
</build>
...
...
Write
Preview
Markdown
is supported
Attach a file
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 post a comment