中文亚洲精品无码_熟女乱子伦免费_人人超碰人人爱国产_亚洲熟妇女综合网

當(dāng)前位置: 首頁(yè) > news >正文

淘寶客怎么做其他網(wǎng)站的推廣百度seo排名360

淘寶客怎么做其他網(wǎng)站的推廣,百度seo排名360,h5css3網(wǎng)站開(kāi)發(fā)實(shí)例,重慶人才招聘網(wǎng)最新招聘2022背景 公司產(chǎn)品微服務(wù)架構(gòu)下有十幾個(gè)模塊,幾乎大部分模塊都要連接redis。每次在客戶(hù)那里部署應(yīng)用,都要改十幾遍配置,太痛苦了。當(dāng)然可以用nacos配置中心的功能,配置公共參數(shù)。不過(guò)我是喜歡在應(yīng)用級(jí)別上解決問(wèn)題,因?yàn)椴⒉弧?article class="baidu_pl">

背景

??公司產(chǎn)品微服務(wù)架構(gòu)下有十幾個(gè)模塊,幾乎大部分模塊都要連接redis。每次在客戶(hù)那里部署應(yīng)用,都要改十幾遍配置,太痛苦了。當(dāng)然可以用nacos配置中心的功能,配置公共參數(shù)。不過(guò)我是喜歡在應(yīng)用級(jí)別上解決問(wèn)題,因?yàn)椴⒉皇敲總€(gè)項(xiàng)目都會(huì)使用nacos,做個(gè)知識(shí)儲(chǔ)備還是不錯(cuò)的。

公共配置文件位置

公共配置文件

啟動(dòng)本地redis(windows版)

啟動(dòng)redis
當(dāng)前redis 沒(méi)有數(shù)據(jù)
在這里插入圖片描述

初始化redis

??這里的初始化和正常把redis配置信息放到application.yml里的初始化是一樣的。

package cn.com.soulfox.common.config;import lombok.extern.slf4j.Slf4j;
import org.springframework.boot.autoconfigure.condition.ConditionalOnClass;
import org.springframework.boot.autoconfigure.condition.ConditionalOnMissingBean;
import org.springframework.boot.autoconfigure.data.redis.RedisProperties;
import org.springframework.boot.context.properties.EnableConfigurationProperties;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.data.redis.connection.RedisConnectionFactory;
import org.springframework.data.redis.core.RedisOperations;
import org.springframework.data.redis.core.RedisTemplate;
import org.springframework.data.redis.serializer.JdkSerializationRedisSerializer;
import org.springframework.data.redis.serializer.StringRedisSerializer;/*** * @create 2024/4/11 10:48*/
@Configuration
@ConditionalOnClass(RedisOperations.class)
@EnableConfigurationProperties(RedisProperties.class)
@Slf4j
public class RedisTemplateConfig {@Bean@ConditionalOnMissingBean(name = "redisTemplate")public RedisTemplate<String, Object> getRedisTemplate(RedisConnectionFactory factory){log.info("開(kāi)始初始化 RedisTemplate ------------------");RedisTemplate<String, Object> redisTemplate = new RedisTemplate<>();// key的序列化類(lèi)型redisTemplate.setKeySerializer(new StringRedisSerializer());redisTemplate.setHashKeySerializer(new StringRedisSerializer());redisTemplate.setHashValueSerializer(new JdkSerializationRedisSerializer());redisTemplate.setValueSerializer(new JdkSerializationRedisSerializer());redisTemplate.setConnectionFactory(factory);log.info("初始化 RedisTemplate 結(jié)束------------------");return redisTemplate;}
}

解析自定義sf-redis.yml

package cn.com.soulfox.business.config;import org.springframework.beans.factory.config.YamlPropertiesFactoryBean;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.context.support.PropertySourcesPlaceholderConfigurer;
import org.springframework.core.io.FileSystemResource;
import org.springframework.stereotype.Component;/*** * @create 2024/6/26 16:41*/
@Configuration
public class CommonConfig {@Bean("common-config")public static PropertySourcesPlaceholderConfigurer properties() {PropertySourcesPlaceholderConfigurer configurer = new PropertySourcesPlaceholderConfigurer();YamlPropertiesFactoryBean redis = new YamlPropertiesFactoryBean();//文件路徑寫(xiě)死的,真正做項(xiàng)目時(shí),文件路徑可以配置到application.yml文件FileSystemResource redisResource = new FileSystemResource("../common-config/sf-redis.yml");redis.setResources(redisResource);configurer.setPropertiesArray(redis.getObject());//如果有多個(gè)配置文件,也是可以處理的。setPropertiesArray(Properties... propertiesArray)方法的參數(shù)是個(gè)數(shù)組,//如下還可以同時(shí)處理文件sf-ports.yml,此時(shí)configurer.setPropertiesArray(redis.getObject());代碼要注釋掉//YamlPropertiesFactoryBean ports = new YamlPropertiesFactoryBean();
//        FileSystemResource portsResource = new FileSystemResource("../common-config/sf-ports.yml");
//        ports.setResources(portsResource);//同時(shí)添加sf-redis.yml和sf-ports.yml的配置信息
//        configurer.setPropertiesArray(redis.getObject(), ports.getObject());return configurer;}
}

應(yīng)用啟動(dòng)類(lèi)

??注意一下,因?yàn)槲乙呀?jīng)搭建了完整的微服務(wù),包括nacos,mybatis,feign等,所有啟動(dòng)類(lèi)上注解比較多。如果只是單純測(cè)試一下,引入springboot基礎(chǔ)框架和redis依賴(lài),寫(xiě)一個(gè)基礎(chǔ)啟動(dòng)類(lèi)就可以了。

package cn.com.soulfox.business;import org.springframework.beans.factory.config.YamlPropertiesFactoryBean;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.cloud.client.discovery.EnableDiscoveryClient;
import org.springframework.cloud.openfeign.EnableFeignClients;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.ComponentScan;
import org.springframework.context.support.PropertySourcesPlaceholderConfigurer;
import org.springframework.core.io.FileSystemResource;
import org.springframework.core.io.PathResource;
import org.springframework.core.io.Resource;
import org.springframework.transaction.annotation.EnableTransactionManagement;
import tk.mybatis.spring.annotation.MapperScan;import java.io.File;@SpringBootApplication
@EnableDiscoveryClient//nacos注冊(cè)中心
@EnableFeignClients(basePackages = {"cn.com.soulfox.common.feign.client"})//feign掃描
@MapperScan(basePackages={"cn.com.soulfox.*.mvc.mapper"})//mybatis mapper掃描
@EnableTransactionManagement//開(kāi)啟數(shù)據(jù)庫(kù)事務(wù)
@ComponentScan("cn.com.soulfox")
public class BusinessApplicationRun {public static void main(String[] args) {SpringApplication.run(BusinessApplicationRun.class, args);}}

啟動(dòng)一下應(yīng)用看看redis是否初始化成功

在這里插入圖片描述

測(cè)試一下是否可以正常使用

  • 單元測(cè)試類(lèi)
package cn.com.soulfox.common.config;import cn.com.soulfox.business.BusinessApplicationRun;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.data.redis.core.RedisTemplate;
import org.springframework.test.context.junit4.SpringRunner;/*** * @create 2024/6/26 16:52*/
@RunWith(SpringRunner.class)
@SpringBootTest(classes = BusinessApplicationRun.class,webEnvironment = SpringBootTest.WebEnvironment.RANDOM_PORT)
public class CommonConfigTest {@Autowiredprivate RedisTemplate<String, Object> redisTemplate;//文件sf-redis.yml里屬性的使用和applications.yml一樣@Value("${spring.redis.host}")private String redisHost;@Testpublic void test(){System.out.println("從文件取參數(shù)測(cè)試+++++++++++");System.out.println("redisHost: " + redisHost);}
}
  • 測(cè)試sf-redis.yml屬性使用
    ?? 使用方法和配置在application.yml文件是一樣,都是通過(guò)@Value注解獲取
    測(cè)試結(jié)果
    在這里插入圖片描述
  • 測(cè)試redis是否可以正常使用
    測(cè)試寫(xiě)入數(shù)據(jù),增加以下測(cè)試方法
	@Testpublic void testRedisSetValue(){this.redisTemplate.opsForValue().set("test", "test123");}

測(cè)試結(jié)果
在這里插入圖片描述
測(cè)試讀取數(shù)據(jù),增加以下測(cè)試方法

	@Testpublic void testRedisGetValue(){Object testValue = this.redisTemplate.opsForValue().get("test");System.out.println(testValue);}

測(cè)試結(jié)果
在這里插入圖片描述

總結(jié)一下。。。

?? 現(xiàn)在的微服務(wù),大多使用nacos作為注冊(cè)中心,同事nacos也能作為配置中心使用。公共配置一般放在nacos中,以上方法沒(méi)有什么用處。但總有項(xiàng)目可能不會(huì)使用nacos,比如使用eureka,這時(shí)候以上方法就有用武之地。這個(gè)方法可以作為知識(shí)儲(chǔ)備,了解一下總是有好處的 :–)
?? 還有一點(diǎn)需要注意的,就是yml文件是在程序啟動(dòng)后解析的,所以文件里的配置信息,在application.yml里是不能通過(guò)${xxx.xxx}使用的。

http://www.risenshineclean.com/news/3807.html

相關(guān)文章:

  • 微信是哪個(gè)公司開(kāi)發(fā)的軟件seo網(wǎng)站排名優(yōu)化公司哪家好
  • 六安網(wǎng)站制作費(fèi)用多少友情網(wǎng)
  • 建設(shè)網(wǎng)站合同最新重大新聞
  • apmserv網(wǎng)站模板怎樣進(jìn)行網(wǎng)絡(luò)營(yíng)銷(xiāo)吸引顧客
  • 網(wǎng)站哪家公司做的最好百度推廣競(jìng)價(jià)
  • 北京 高端網(wǎng)站設(shè)計(jì)網(wǎng)站分析報(bào)告范文
  • 網(wǎng)站入股云建站百度手機(jī)助手下載安卓
  • 南海網(wǎng)站建設(shè)網(wǎng)站seo在線診斷
  • 建設(shè)手機(jī)網(wǎng)站包括哪些費(fèi)用怎么做百度推廣平臺(tái)
  • 廣州商城網(wǎng)站建設(shè)東莞關(guān)鍵詞自動(dòng)排名
  • 做我的狗哪個(gè)網(wǎng)站可以看廣州網(wǎng)站推廣排名
  • 網(wǎng)站開(kāi)發(fā)與應(yīng)用百度競(jìng)價(jià)培訓(xùn)班
  • 網(wǎng)站建設(shè)需求免費(fèi)html網(wǎng)頁(yè)模板
  • 天津在哪做網(wǎng)站西安seo網(wǎng)站排名
  • 中小企業(yè)發(fā)展淘寶seo關(guān)鍵詞的獲取方法有哪些
  • 怎么做阿里國(guó)際網(wǎng)站的數(shù)據(jù)分析重慶森林電影簡(jiǎn)介
  • 網(wǎng)站制作與建設(shè)書(shū)籍東莞有限公司seo
  • 學(xué)校做網(wǎng)站方案浙江企業(yè)seo推廣
  • 在線傳媒有限公司搜索引擎優(yōu)化的主要內(nèi)容
  • 枸杞網(wǎng)站建設(shè)方案seo外包
  • wordpress網(wǎng)站文件管理谷歌推廣代理商
  • 網(wǎng)頁(yè)游戲排行榜2023西安網(wǎng)站seo服務(wù)
  • 濟(jì)南企業(yè)建站品牌騰訊企點(diǎn)
  • wordpress 制作企業(yè)站長(zhǎng)春seo招聘
  • wordpress+嗨一下上首頁(yè)的seo關(guān)鍵詞優(yōu)化
  • dedecms做的網(wǎng)站_網(wǎng)站中的圖片總是被同一ip惡意點(diǎn)擊b2c有哪些電商平臺(tái)
  • 電商網(wǎng)站用什么做的網(wǎng)站關(guān)鍵詞排名查詢(xún)
  • 大連建設(shè)局網(wǎng)站上海百度推廣開(kāi)戶(hù)
  • 如何看網(wǎng)站的版本號(hào)現(xiàn)在疫情怎么樣了最新消息
  • 做網(wǎng)站底部不顯示中文怎么回事企業(yè)培訓(xùn)課程體系