package com.ym.mec.web; import org.mybatis.spring.annotation.MapperScan; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.boot.autoconfigure.condition.ConditionalOnBean; import org.springframework.cloud.client.discovery.EnableDiscoveryClient; import org.springframework.cloud.client.loadbalancer.LoadBalanced; import org.springframework.cloud.openfeign.EnableFeignClients; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.ComponentScan; import org.springframework.context.annotation.Configuration; import org.springframework.data.redis.core.RedisTemplate; import org.springframework.web.client.RestTemplate; import com.spring4all.swagger.EnableSwagger2Doc; import com.ym.mec.common.redis.service.RedisCache; @SpringBootApplication @EnableDiscoveryClient @EnableFeignClients("com.ym.mec") @MapperScan("com.ym.mec.biz.dal.dao") @ComponentScan(basePackages = "com.ym.mec") @Configuration @EnableSwagger2Doc public class WebApplication { @Autowired private RedisTemplate redisTemplate; public static void main(String[] args) { SpringApplication.run(WebApplication.class, args); } @Bean @LoadBalanced public RestTemplate restTemplate() { return new RestTemplate(); } @Bean @ConditionalOnBean(RedisTemplate.class) public RedisCache redisCache() { return new RedisCache(redisTemplate); } }