springcloud pom.xml完整配置详解
1、父工程
pom Maven http://maven.apache.org/ 2001 website scp://webhost.company.com/www/website UTF-8 12 12 4.12 1.18.10 1.2.17 8.0.18 1.1.16 2.1.1 com.alibaba.cloud spring-cloud-alibaba-dependencies 2.1.0.RELEASE pom import org.apache.maven.plugins maven-project-info-reports-plugin 3.0.0 org.springframework.cloud spring-cloud-starter-gateway org.springframework.boot spring-boot-dependencies 2.2.2.RELEASE pom import org.springframework.cloud spring-cloud-dependencies Hoxton.SR1 pom import com.alibaba.cloud spring-cloud-alibaba-dependencies 2.1.0.RELEASE pom import mysql mysql-connector-java ${mysql.version} runtime com.alibaba druid ${druid.version} org.mybatis.spring.boot mybatis-spring-boot-starter ${mybatis.spring.boot.version} junit junit ${junit.version} log4j log4j ${log4j.version} org.springframework.boot spring-boot-maven-plugin true true
2、子工程
org.example common-service ${project.version} com.aliyun.oss aliyun-sdk-oss 2.8.2 com.github.pagehelper pagehelper-spring-boot-starter 1.2.10 commons-lang commons-lang 2.6 io.springfox springfox-swagger2 2.9.2 io.github.openfeign feign-httpclient com.alibaba.csp sentinel-datasource-nacos io.springfox springfox-swagger-ui 2.9.2 org.springframework.cloud spring-cloud-starter-openfeign org.example common ${project.version} mysql mysql-connector-java 8.0.18 com.fasterxml.jackson.core jackson-core 2.9.0 com.fasterxml.jackson.core jackson-annotations 2.9.0 com.fasterxml.jackson.core jackson-databind 2.9.0 com.alibaba.cloud spring-cloud-starter-alibaba-nacos-config com.alibaba.cloud spring-cloud-starter-alibaba-nacos-discovery org.springframework.boot spring-boot-starter-amqp org.mybatis.spring.boot mybatis-spring-boot-starter org.springframework.boot spring-boot-starter-websocket com.alibaba fastjson 1.2.41 org.springframework.boot spring-boot-starter-data-redis redis.clients jedis io.lettuce lettuce-core redis.clients jedis org.springframework.boot spring-boot-starter-web org.projectlombok lombok true
3、swapper配置
packagemain.config;
importorg.springframework.context.annotation.Bean;
importorg.springframework.context.annotation.ComponentScan;
importorg.springframework.context.annotation.Configuration;
importspringfox.documentation.builders.ApiInfoBuilder;
importspringfox.documentation.builders.PathSelectors;
importspringfox.documentation.builders.RequestHandlerSelectors;
importspringfox.documentation.service.ApiInfo;
importspringfox.documentation.spi.DocumentationType;
importspringfox.documentation.spring.web.plugins.Docket;
importspringfox.documentation.swagger2.annotations.EnableSwagger2;
@Configuration
@EnableSwagger2
publicclassSwaggerConfig{
@Bean
publicDocketcreateRestApi(){
returnnewDocket(DocumentationType.SWAGGER_2)
.apiInfo(apiInfo())
.select()
.apis(RequestHandlerSelectors.basePackage("main.controller"))
.paths(PathSelectors.any())
.build();
}
//配置在线文档的基本信息
privateApiInfoapiInfo(){
returnnewApiInfoBuilder()
.title("springboot利用swagger构建api文档")
.description("简单优雅的restfun风格,https://me.csdn.net/blog/miachen520")
.termsOfServiceUrl("https://me.csdn.net/blog/miachen520")
.version("1.0")
.build();
}
}
4、跨域配置
packagemain.config;
importorg.springframework.context.annotation.Configuration;
importorg.springframework.web.servlet.config.annotation.CorsRegistry;
importorg.springframework.web.servlet.config.annotation.WebMvcConfigurer;
@Configuration
publicclasswebConfigimplementsWebMvcConfigurer{
@Override
publicvoidaddCorsMappings(CorsRegistryregistry){
//设置允许跨域的路径
registry.addMapping("/**")
//设置允许跨域请求的域名
.allowedOrigins("*")
//是否允许证书
.allowCredentials(true)
.allowedMethods("*")
.maxAge(3600);
}
}
5、Redis序列化
serializer:
packagemain.config; importcom.alibaba.fastjson.JSON; importcom.alibaba.fastjson.parser.ParserConfig; importcom.alibaba.fastjson.serializer.SerializerFeature; importorg.springframework.data.redis.serializer.RedisSerializer; importorg.springframework.data.redis.serializer.SerializationException; importjava.nio.charset.Charset; publicclassFastJsonRedisSerializerimplementsRedisSerializer { publicstaticfinalCharsetDEFAULT_CHARSET=Charset.forName("UTF-8"); privateClass clazz; publicFastJsonRedisSerializer(Class clazz){ super(); this.clazz=clazz; } @Override publicbyte[]serialize(Tt)throwsSerializationException{ if(null==t){ returnnewbyte[0]; } returnJSON.toJSONString(t,SerializerFeature.WriteClassName).getBytes(DEFAULT_CHARSET); } @Override publicTdeserialize(byte[]bytes)throwsSerializationException{ if(null==bytes||bytes.length<=0){ returnnull; } Stringstr=newString(bytes,DEFAULT_CHARSET); ParserConfig.getGlobalInstance().setAutoTypeSupport(true); return(T)JSON.parseObject(str,clazz); } }
config:
packagemain.config;
importorg.springframework.boot.autoconfigure.condition.ConditionalOnClass;
importorg.springframework.boot.autoconfigure.condition.ConditionalOnMissingBean;
importorg.springframework.boot.autoconfigure.data.redis.RedisProperties;
importorg.springframework.boot.context.properties.EnableConfigurationProperties;
importorg.springframework.context.annotation.Bean;
importorg.springframework.context.annotation.Configuration;
importorg.springframework.data.redis.connection.RedisConnectionFactory;
importorg.springframework.data.redis.core.RedisOperations;
importorg.springframework.data.redis.core.RedisTemplate;
importorg.springframework.data.redis.core.StringRedisTemplate;
importorg.springframework.data.redis.serializer.StringRedisSerializer;
@Configuration
@ConditionalOnClass(RedisOperations.class)
@EnableConfigurationProperties(RedisProperties.class)
publicclassredisConfig{
@Bean
@ConditionalOnMissingBean(name="redisTemplate")
publicRedisTemplate
到此这篇关于springcloudpom.xml完整配置的文章就介绍到这了,更多相关springcloudpom.xml配置内容请搜索毛票票以前的文章或继续浏览下面的相关文章希望大家以后多多支持毛票票!
声明:本文内容来源于网络,版权归原作者所有,内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:czq8825#qq.com(发邮件时,请将#更换为@)进行举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。