注解优化,grpc开发
This commit is contained in:
@@ -1,23 +0,0 @@
|
||||
package com.zyplayer.doc.manage.framework.config;
|
||||
|
||||
import com.zyplayer.doc.db.framework.configuration.EnableDocDb;
|
||||
import com.zyplayer.doc.db.framework.db.bean.DatabaseRegistrationBean;
|
||||
import org.springframework.boot.context.properties.ConfigurationProperties;
|
||||
import org.springframework.context.annotation.Bean;
|
||||
import org.springframework.context.annotation.Configuration;
|
||||
|
||||
/**
|
||||
* @Author
|
||||
* @Date 2018/11/11
|
||||
**/
|
||||
@EnableDocDb
|
||||
@Configuration
|
||||
public class DocDatabaseRegistrationConfig {
|
||||
|
||||
@Bean
|
||||
@ConfigurationProperties(prefix = "zyplayer.doc.db")
|
||||
public DatabaseRegistrationBean databaseRegistrationBean(){
|
||||
return new DatabaseRegistrationBean();
|
||||
}
|
||||
|
||||
}
|
||||
@@ -1,14 +0,0 @@
|
||||
package com.zyplayer.doc.manage.framework.config;
|
||||
|
||||
import com.zyplayer.doc.dubbo.framework.config.EnableDocDubbo;
|
||||
import org.springframework.context.annotation.Configuration;
|
||||
|
||||
/**
|
||||
* @Author
|
||||
* @Date 2018/11/11
|
||||
**/
|
||||
@EnableDocDubbo
|
||||
@Configuration
|
||||
public class DocDubboConfig {
|
||||
|
||||
}
|
||||
@@ -1,14 +0,0 @@
|
||||
package com.zyplayer.doc.manage.framework.config;
|
||||
|
||||
import com.zyplayer.doc.wiki.framework.config.EnableDocWiki;
|
||||
import org.springframework.context.annotation.Configuration;
|
||||
|
||||
/**
|
||||
* @Author
|
||||
* @Date 2018/11/11
|
||||
**/
|
||||
@EnableDocWiki
|
||||
@Configuration
|
||||
public class DocWikiConfig {
|
||||
|
||||
}
|
||||
@@ -1,141 +0,0 @@
|
||||
//package com.zyplayer.doc.manage.framework.config;
|
||||
//
|
||||
//import com.atomikos.icatch.jta.UserTransactionImp;
|
||||
//import com.atomikos.icatch.jta.UserTransactionManager;
|
||||
//import com.baomidou.mybatisplus.extension.plugins.PaginationInterceptor;
|
||||
//import com.baomidou.mybatisplus.extension.plugins.PerformanceInterceptor;
|
||||
//import com.baomidou.mybatisplus.extension.spring.MybatisSqlSessionFactoryBean;
|
||||
//import com.zyplayer.doc.data.repository.support.interceptor.SqlLogInterceptor;
|
||||
//import org.apache.ibatis.plugin.Interceptor;
|
||||
//import org.mybatis.spring.annotation.MapperScan;
|
||||
//import org.springframework.beans.factory.annotation.Value;
|
||||
//import org.springframework.boot.jta.atomikos.AtomikosDataSourceBean;
|
||||
//import org.springframework.context.annotation.Bean;
|
||||
//import org.springframework.context.annotation.Configuration;
|
||||
//import org.springframework.core.io.support.PathMatchingResourcePatternResolver;
|
||||
//import org.springframework.transaction.PlatformTransactionManager;
|
||||
//import org.springframework.transaction.annotation.EnableTransactionManagement;
|
||||
//import org.springframework.transaction.jta.JtaTransactionManager;
|
||||
//
|
||||
//import javax.sql.DataSource;
|
||||
//import javax.transaction.TransactionManager;
|
||||
//import javax.transaction.UserTransaction;
|
||||
//import java.util.Properties;
|
||||
//
|
||||
///**
|
||||
// * mybatis plus数据库配置
|
||||
// */
|
||||
////@Configuration
|
||||
//public class MybatisPlusConfig {
|
||||
//
|
||||
// /**
|
||||
// * sql日志
|
||||
// **/
|
||||
// private static final SqlLogInterceptor SQL_LOG_INTERCEPTOR;
|
||||
//
|
||||
// static {
|
||||
// SQL_LOG_INTERCEPTOR = new SqlLogInterceptor();
|
||||
// Properties properties = new Properties();
|
||||
// SQL_LOG_INTERCEPTOR.setProperties(properties);
|
||||
// }
|
||||
//
|
||||
// /**
|
||||
// * 分布式事务配置
|
||||
// */
|
||||
// @Configuration
|
||||
// static class JTATransactionManagerConfig {
|
||||
//
|
||||
// @Bean(name = "userTransaction")
|
||||
// public UserTransaction userTransaction() throws Throwable {
|
||||
// UserTransactionImp userTransactionImp = new UserTransactionImp();
|
||||
// userTransactionImp.setTransactionTimeout(300);
|
||||
// return userTransactionImp;
|
||||
// }
|
||||
//
|
||||
// @Bean(name = "atomikosTransactionManager")
|
||||
// public TransactionManager atomikosTransactionManager() {
|
||||
// UserTransactionManager userTransactionManager = new UserTransactionManager();
|
||||
// userTransactionManager.setForceShutdown(true);
|
||||
// return userTransactionManager;
|
||||
// }
|
||||
//
|
||||
// @Bean(name = "transactionManager")
|
||||
// public PlatformTransactionManager transactionManager() throws Throwable {
|
||||
// UserTransaction userTransaction = userTransaction();
|
||||
// TransactionManager atomikosTransactionManager = atomikosTransactionManager();
|
||||
//
|
||||
// JtaTransactionManager jtaTransactionManager = new JtaTransactionManager(userTransaction, atomikosTransactionManager);
|
||||
// jtaTransactionManager.setAllowCustomIsolationLevels(true);
|
||||
// jtaTransactionManager.setGlobalRollbackOnParticipationFailure(true);
|
||||
// jtaTransactionManager.setDefaultTimeout(30);
|
||||
//
|
||||
// return jtaTransactionManager;
|
||||
// }
|
||||
// }
|
||||
//
|
||||
// /**
|
||||
// * 数据库配置
|
||||
// */
|
||||
// @Configuration
|
||||
// @EnableTransactionManagement
|
||||
// @MapperScan(value = "com.zyplayer.doc.data.repository.manage.mapper", sqlSessionFactoryRef = "manageSqlSessionFactory")
|
||||
// static class ManageMybatisDbConfig {
|
||||
//
|
||||
// @Value("${zyplayer.doc.manage.datasource.driverClassName}")
|
||||
// private String driverClassName;
|
||||
// @Value("${zyplayer.doc.manage.datasource.url}")
|
||||
// private String url;
|
||||
// @Value("${zyplayer.doc.manage.datasource.username}")
|
||||
// private String username;
|
||||
// @Value("${zyplayer.doc.manage.datasource.password}")
|
||||
// private String password;
|
||||
//
|
||||
// @Bean(name = "manageDatasource")
|
||||
// public DataSource manageDatasource() {
|
||||
// Properties xaProperties = new Properties();
|
||||
// xaProperties.setProperty("driverClassName", driverClassName);
|
||||
// xaProperties.setProperty("url", url);
|
||||
// xaProperties.setProperty("username", username);
|
||||
// xaProperties.setProperty("password", password);
|
||||
// xaProperties.setProperty("maxActive", "500");
|
||||
// xaProperties.setProperty("testOnBorrow", "true");
|
||||
// xaProperties.setProperty("testWhileIdle", "true");
|
||||
// xaProperties.setProperty("validationQuery", "select 'x'");
|
||||
//
|
||||
// AtomikosDataSourceBean xaDataSource = new AtomikosDataSourceBean();
|
||||
// xaDataSource.setXaProperties(xaProperties);
|
||||
// xaDataSource.setXaDataSourceClassName("com.alibaba.druid.pool.xa.DruidXADataSource");
|
||||
// xaDataSource.setUniqueResourceName("manageDatasource");
|
||||
// xaDataSource.setMaxPoolSize(500);
|
||||
// xaDataSource.setMinPoolSize(1);
|
||||
// xaDataSource.setMaxLifetime(60);
|
||||
// return xaDataSource;
|
||||
// }
|
||||
//
|
||||
// @Bean(name = "manageSqlSessionFactory")
|
||||
// public MybatisSqlSessionFactoryBean manageSqlSessionFactory() throws Exception {
|
||||
// MybatisSqlSessionFactoryBean sqlSessionFactoryBean = new MybatisSqlSessionFactoryBean();
|
||||
// sqlSessionFactoryBean.setDataSource(manageDatasource());
|
||||
// sqlSessionFactoryBean.setPlugins(new Interceptor[]{SQL_LOG_INTERCEPTOR});
|
||||
//
|
||||
// PathMatchingResourcePatternResolver resolver = new PathMatchingResourcePatternResolver();
|
||||
// sqlSessionFactoryBean.setMapperLocations(resolver.getResources("classpath:/mapper/manage/*Mapper.xml"));
|
||||
// return sqlSessionFactoryBean;
|
||||
// }
|
||||
// }
|
||||
//
|
||||
// @Bean
|
||||
// public PerformanceInterceptor performanceInterceptor() {
|
||||
// PerformanceInterceptor performanceInterceptor = new PerformanceInterceptor();
|
||||
// /* <!-- SQL 执行性能分析,开发环境使用,线上不推荐。 maxTime 指的是 sql 最大执行时长 --> */
|
||||
// performanceInterceptor.setMaxTime(1000);
|
||||
// /* <!--SQL是否格式化 默认false--> */
|
||||
// performanceInterceptor.setFormat(true);
|
||||
// return performanceInterceptor;
|
||||
// }
|
||||
//
|
||||
// @Bean
|
||||
// public PaginationInterceptor paginationInterceptor() {
|
||||
// return new PaginationInterceptor();
|
||||
// }
|
||||
//}
|
||||
@@ -1,53 +0,0 @@
|
||||
|
||||
package com.zyplayer.doc.manage.framework.config;
|
||||
|
||||
import com.google.common.base.Predicates;
|
||||
import com.zyplayer.doc.swagger.framework.configuration.EnableSwaggerMgUi;
|
||||
import io.swagger.annotations.Api;
|
||||
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.service.Contact;
|
||||
import springfox.documentation.spi.DocumentationType;
|
||||
import springfox.documentation.spring.web.plugins.Docket;
|
||||
|
||||
/**
|
||||
* 不需要管理本项目的文档,只需要开启@EnableSwaggerMgUi即可
|
||||
* @author 暮光:城中城
|
||||
* @since 2018年11月11日
|
||||
*/
|
||||
@Configuration
|
||||
//@EnableSwagger2
|
||||
@EnableSwaggerMgUi(
|
||||
selfDoc = false,// 是否开启自身的文档
|
||||
defaultLocation = {// 启动后第一次访问没有数据情况下需要加载进来的/v2/doc地址
|
||||
//"http://localhost:8080/v2/doc"
|
||||
}
|
||||
)
|
||||
public class SwaggerConfiguration {
|
||||
|
||||
@Bean
|
||||
public Docket createRestApi() {
|
||||
return new Docket(DocumentationType.SWAGGER_2)
|
||||
.apiInfo(apiInfo())
|
||||
.select()
|
||||
.apis(Predicates.or(
|
||||
RequestHandlerSelectors.basePackage("com.zyplayer.doc.manage"),
|
||||
RequestHandlerSelectors.withClassAnnotation(Api.class)))
|
||||
.paths(PathSelectors.any())
|
||||
.build();
|
||||
}
|
||||
|
||||
private ApiInfo apiInfo() {
|
||||
return new ApiInfoBuilder()
|
||||
.title("zyplayer-doc-manage接口文档")
|
||||
.description("欢迎使用")
|
||||
.termsOfServiceUrl("")
|
||||
.contact(new Contact("", "", ""))
|
||||
.version("1.0")
|
||||
.build();
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,42 @@
|
||||
package com.zyplayer.doc.manage.framework.config;
|
||||
|
||||
import com.zyplayer.doc.db.framework.configuration.EnableDocDb;
|
||||
import com.zyplayer.doc.db.framework.db.bean.DatabaseRegistrationBean;
|
||||
import com.zyplayer.doc.dubbo.framework.config.EnableDocDubbo;
|
||||
import com.zyplayer.doc.grpc.framework.config.EnableDocGrpc;
|
||||
import com.zyplayer.doc.swagger.framework.configuration.EnableDocSwagger;
|
||||
import com.zyplayer.doc.wiki.framework.config.EnableDocWiki;
|
||||
import org.springframework.boot.context.properties.ConfigurationProperties;
|
||||
import org.springframework.context.annotation.Bean;
|
||||
import org.springframework.context.annotation.Configuration;
|
||||
|
||||
/**
|
||||
* 按需开启zyplayer-doc所有的服务
|
||||
*
|
||||
* @author 暮光:城中城
|
||||
* @since 2019年3月31日
|
||||
*/
|
||||
@Configuration
|
||||
public class ZyplayerDocConfig {
|
||||
|
||||
@EnableDocGrpc // grpc默认不开启
|
||||
public class enableDocGrpc{}
|
||||
|
||||
@EnableDocWiki
|
||||
public class enableDocWiki{}
|
||||
|
||||
@EnableDocDubbo
|
||||
public class enableDocDubbo{}
|
||||
|
||||
@EnableDocDb
|
||||
public class enableDocDb{}
|
||||
|
||||
@EnableDocSwagger(selfDoc = false)
|
||||
public class enableDocSwagger{}
|
||||
|
||||
@Bean
|
||||
@ConfigurationProperties(prefix = "zyplayer.doc.db")
|
||||
public DatabaseRegistrationBean databaseRegistrationBean() {
|
||||
return new DatabaseRegistrationBean();
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user