代碼檢查工具,使用時在pom中加入指定檢查文件的路徑html
<build> <plugins> <plugin> <artifactId>maven-checkstyle-plugin</artifactId> <version>2.17</version> <executions> <execution> <id>verify</id> <phase>verify</phase> <configuration> <configLocation>style/checkstyle.xml</configLocation> <encoding>UTF-8</encoding> <consoleOutput>true</consoleOutput> <failsOnError>true</failsOnError> <includeTestSourceDirectory>false</includeTestSourceDirectory> </configuration> <goals> <goal>check</goal> </goals> </execution> </executions> </plugin> </plugins> <pluginManagement> <plugins> <plugin> <artifactId>maven-assembly-plugin</artifactId> <version>3.0.0</version> </plugin> </plugins> </pluginManagement> </build>
定義本身須要的格式java
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE module PUBLIC "-//Puppy Crawl//DTD Check Configuration 1.3//EN" "http://www.puppycrawl.com/dtds/configuration_1_3.dtd"> <module name="Checker"> <property name="localeLanguage" value="en"/> <property name="charset" value="UTF-8"/> <property name="severity" value="warning"/> <property name="fileExtensions" value="java, properties, xml"/> <module name="FileTabCharacter"> <property name="eachLine" value="true"/> </module> <module name="RegexpSingleline"> <property name="format" value="//FIXME"/> <property name="message" value="Recommended fix FIXME task !"/> </module> <module name="RegexpSingleline"> <property name="format" value="//TODO"/> <property name="message" value="Recommended fix TODO task !"/> </module> <module name="FileLength"> <property name="max" value="3000"/> </module> <module name="TreeWalker"> <module name="UnusedImports"> <property name="processJavadoc" value="true"/> </module> <module name="RedundantImport"/> <module name="EqualsHashCode"/> <module name="SimplifyBooleanExpression"/> <module name="OneStatementPerLine"/> <module name="UnnecessaryParentheses"/> <module name="SimplifyBooleanReturn"/> <module name="DefaultComesLast"/> <module name="EmptyStatement"/> <module name="UpperEll"/> <module name="ConstantName"> <property name="format" value="(^[A-Z][A-Z0-9]*(_[A-Z0-9]+)*$)|(^log$)"/> </module> <module name="LocalVariableName"/> <module name="LocalFinalVariableName"/> <module name="MemberName"/> <module name="ClassTypeParameterName"> <property name="format" value="^[A-Z0-9]*$"/> </module> <module name="MethodTypeParameterName"> <property name="format" value="^[A-Z0-9]*$"/> </module> <module name="PackageName"/> <module name="ParameterName"/> <module name="StaticVariableName"/> <module name="TypeName"/> <module name="AvoidStarImport"/> <module name="GenericWhitespace"/> <module name="WhitespaceAround"> <property name="allowEmptyConstructors" value="true"/> <property name="allowEmptyMethods" value="true"/> </module> <module name="Indentation"/> <module name="MethodParamPad"/> <module name="ParenPad"/> <module name="TypecastParenPad"/> </module> </module>
也能夠參考線程的,好比一些開源項目或者大公司,以下git
加入依賴web
<!-- Swagger --> <dependency> <groupId>io.springfox</groupId> <artifactId>springfox-swagger2</artifactId> <version>2.6.0</version> </dependency> <dependency> <groupId>io.springfox</groupId> <artifactId>springfox-swagger-ui</artifactId> <version>2.6.0</version> </dependency>
加入配置類spring
@Configuration @EnableSwagger2 public class Swagger2Config extends WebMvcConfigurationSupport { @Bean public Docket customDocket() { return new Docket(DocumentationType.SWAGGER_2) .apiInfo(apiInfo()) .groupName("group-me") .select() .apis(RequestHandlerSelectors.basePackage("com.test")) .paths(PathSelectors.any()) .build(); } private ApiInfo apiInfo() { Contact contact = new Contact("me", "", "me@111.com"); ApiInfo apiInfo = new ApiInfoBuilder() .title("文檔") .description("接口文檔") .contact(contact) .version("1.0") .build(); return apiInfo; } @Override protected void addResourceHandlers(ResourceHandlerRegistry registry) { registry.addResourceHandler("swagger-ui.html").addResourceLocations("classpath:/META-INF/resources/"); registry.addResourceHandler("/webjars/**").addResourceLocations("classpath:/META-INF/resources/webjars/"); } }
按照規則在controller及對應的請求響應對象中加入標籤,啓動後自動識別api
參考maven
http://www.javashuo.com/article/p-qudxtoby-hx.htmlide
訪問時在baseurl後面加 swagger-ui.html 便可看到對應的接口定義,返回等工具